Ïf-statements , , . , CPU ( ), , . , :). , , , , . Agner Fog .
- C- . (& &) , C , f32, , , > 0,0f ( ). : test1 true branch taken (t1tbt), test1 false no branch (t1fnb) test2 (t2tbt) ..,
t1tbt ; var.m128_f32[0] <= 0.0f
t1fnb t2tbt ; var.m128_f32[0] > 0.0f, var.m128_f32[1] <= 0.0f
t1fnb t2fnb t3tbt ; var.m128_f32[0] > 0.0f, var.m128_f32[1] > 0.0f,
; var.m128_f32[2] <= 0.0f
t1fnb t2fnb t3fnb t4tbt ; var.m128_f32[0] > 0.0f, var.m128_f32[1] > 0.0f,
; var.m128_f32[2] > 0.0f, var.m128_f32[3] <= 0.0f
t1fnb t2fnb t3fnb t4fnb ; var.m128_f32[0] > 0.0f, var.m128_f32[1] > 0.0f
; var.m128_f32[2] > 0.0f, var.m128_f32[3] > 0.0f
, .
, ( ), var , , . , 1.0f , 0x00, 0x00, 0x80, 0x3f (x86/little-endian). 0x3f800000 +1065353216. 0.0f - 0x00, 0x00, 0x00, 0x00 0x00000000 (). float , , , (0x80000000).