是不是比<=更快?我在讀一本書,作者說if( a < 901 )比if( a <= 900 ).不完全像這個簡單的例子,但是循環復雜的代碼有輕微的性能變化。我認為這必須對生成的機器代碼做一些操作,以防它是真的。
3 回答

汪汪一只貓
TA貢獻1898條經驗 獲得超8個贊
Comparison Subtraction---------- -----------A < B --> A - B < 0A = B --> A - B = 0A > B --> A - B > 0
A < B
Comparison Subtraction Carry Bit Zero Bit---------- ----------- --------- --------A < B --> A - B < 0 0 0A = B --> A - B = 0 1 1A > B --> A - B > 0 1 0
A < B
;; Implementation of "if (A < B) goto address;"cmp A, B ;; compare A to B bcz address ;; Branch if Carry is Zero to the new address
;; Implementation of "if (A <= B) goto address;"cmp A, B ;; compare A to B bcz address ;; branch if A < B bzs address ;; also, Branch if the Zero bit is Set

Helenr
TA貢獻1780條經驗 獲得超4個贊
<
<=
<=
<
- 3 回答
- 0 關注
- 338 瀏覽
添加回答
舉報
0/150
提交
取消