热门问题
时间线
聊天
视角
负旗标
来自维基百科,自由的百科全书
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