汇编语言(3) 条件处理

本文详细介绍了汇编语言中的条件处理,包括布尔指令如AND、OR、XOR、NOT及TEST,以及CMP指令对操作数的关系判断。进一步讲解了如何通过设置和检查CPU标志位实现条件跳转,如基于相等性、无符号数和有符号数比较的跳转。还涵盖了条件循环指令,如LOOPZ、LOOPE、LOOPNZ和LOOPNE,并讨论了条件控制流的伪指令。
摘要由CSDN通过智能技术生成

布尔指令和比较指令

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
目的操作数=
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值