布尔指令和比较指令
and指令:除了两个以逻辑与是1其余的都是0
将字符转换为大写:
01100001=61h('a')
01000001=41('A')
把任何一个字符与二进制数1101 1111进行and九科得到大写
or指令:除了两个零逻辑或是0其余的都是1
or al,al
下表给出了零标志位和符号标志位对al内容的说明:
零标志位 | 符号标志位 | AL中的值 |
---|---|---|
清零 | 清零 | 大于零 |
置一 | 清零 | 等于零 |
清零 | 置一 | 小于零 |
xor指令:相同为零不同为一
not指令:触发翻转操作数中的所有位。其结果成为反码。
test指令:将两个数进行and指令但是不改变目标数。
————————————————————————————————————————————————————————
CMP指令:指令执行从目的操作数中减去源操作数的隐含减法操作,并且不修改任何操作数。
无符号操作数之间的关系:
CMP结果 | ZF | CF |
---|---|---|
目的操作数<源操作数 | 0 | 1 |
目的操作数>源操作数 | 0 | 0 |
目的操作数= |