热门问题
时间线
聊天
视角
負旗標
来自维基百科,自由的百科全书
Remove ads
在中央處理器裡,負旗標(negative flag)或是符號旗標(sign flag)是狀態暫存器裡的一個位元,說明上一個數學運算的結果為負。在二補數表示法下,符號位元(最高有效位)為1表示數值為負。
例如,在8位元有號數系統中,-37用二進制表示,會是1101 1011(符號位元為1),而+37則會是0010 0101(符號位元為0)。
許多處理器架構下都有負旗標,像是MOS 6502、英特爾8051、Atmel AVR指令集、ARM等。
在X86處理器中,負旗標會依以下指令的結果而定(參考Intel 80386手冊[1]):
- 加減法運算
- 比較指令(類似於減法,但不儲存結果)
- 位元邏輯指令:XOR,AND,OR。
- TEST指令:類似AND,但不儲存結果。
對於位元邏輯指令而言,數值的正負號沒有意義,因此也有些微處理器不會針對位元邏輯指令調整負旗標。
Remove ads
參考資料
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads