一、寄存器的作用:
1)、用来存储相关指令的某些执行结果
2)、用来为cpu执行相关指令提供行为依据
3)、用来控制cpu的相关工作方式
二、标志位
8086cpu提供了0、2、4、6、7、8、9、10、11位状态字
名称 位数 记录
zf: 零标志位 6 指令执行后zf=1,结果为0
zf=0,结果不为0
pf: 奇偶标志 2 bit位中1的个数为偶数,pf=1
为奇数,pf=0
sf: 符号标志 7 指令执行后,结果为负,sf=1
如果为非负,sf=0
cf: 进位标志 0 无符号运算,进位或借位,cf=1
否则cf=0
of: 溢出标志 11 有符号运算,结果溢出,of=1
否则of=0
三、寄存器的应用
1.adc指令: 带进位加法,利用cf位上记录的进位值
指令格式: adc 操作对象1 , 操作对象2
功能: 操作对象1=操作对象1+操作对象2+cf
2.sbb指令: 带进位减法,利用cf位上记录的进位值
指令格式: sbb 操作对象1 , 操作对象2
功能: 操作对象1=操作对象1-操作对象2-cf
3.cmp指令: 比较指令,相当于减法指令,结果不保存
指令格式: 操作对象1, 操作对象2
功能: 操作对象1=操作对象1-操作对象2,结果不保存
1)、无符号运算:
zf=1,说明(ax)=(bx)
zf=0,说明(ax)≠(bx)
cf=1,说明(ax)<(bx)
cf=0, 说明(ax)≥(bx)
cf=0并且zf=0,说明(ax)>(bx)
cf=1并且zf=1,说明(ax)≤(bx)
根据cmp指令:
含义 检测的相关标志位
je 等于则转移 zf=1
jne 不等于则转移 zf=0
jb 低于则转移 cf=1
jnb 不低于则转移 cf=0
ja 高于则转移 cf=0且zf=0
jna 不高于则转移 cf=1或zf=1
2)、有符号运算:cmp ah,bh
如果sf=1,而of=0,所以(ah)<(bh)
如果sf=1,而of=1,所以(ah)>(bh)
如果sf=0,而of=1,所以(ah)<(bh)
如果sf=0,而of=0,所以(ah)≥(bh)
四、df标志和串传送指令:
1、1)、df=0,每次操作后si,di递增
2)、df=1,每次操作后si,di递减
2、movsb
mov es:[di],byte ptr ds:[si] ;8086不支持这样指令
如果 df=0
inc si
inc di
如果
dec si
dec di
3、movsw
mov es:[di],word ptr ds:[si] ;8086不支持这样指令
如果 df=0 ;cld指令(正向)
add si,2
add di,2
如果 df=1 ;std指令(反向)
sub si,2
sub di,2
4、rep
rep movsb 或 movsw
功能:
s:movsb 或 movsw
loop s
五、pushf和popf
pushf:把标志寄存器压入栈
popf:从栈中弹出数据,送人标志jcq
- [a88510] 其实你可以理解为,就是一个压入,一个弹出 03/09 12:11
- [suixin] 你要把这些说明去掉就可以了 02/12 14:55
- [suixin] 我试过了 可以呀 02/12 14:53
- [waiwai] 这程序不能通过编译,你没试过吗? 02/02 21:50
- [suixin] 不对,好像除了范逸之的其他的买不到了。我在网上买了很长时间还是没有 01/08 15:50
- [suixin] 晕了我是转载的现在这些都买不到了 01/08 15:47
- [waiwai] 找本VB好书还真难,麻烦给我发个吧...... bzj781129@sina.com 01/08 15:43
- [游客] 涉及push pop时一定要定义堆栈,经验!!很重要!! 01/06 22:43
- [regex] 还有一点非常重要,当栈空时,SS:SP指向栈空间最高地址单元的下一个单元。 01/01 00:27
- [regex] 第三章真的非常重要 01/01 00:25
- [suixin] 对不起我还没学到哪里有很多伪指令不认识等我学的差不多的时候我再给你弄吧,先不好意思了 01/03 11:54
- [游客] 你好,我搜了一个汇编程序,很长,你能帮忙写点注释吗? DATA SEGMENT 01/02 11:19
- [kevin812566059] 你好!我也想学习汇编。我前几天报名的,在这个网上学习的步骤是怎么样的?我怎么找不到什么作业啊?应该看 12/29 20:49
- [zouhehui] 真的,我相信一段时间以后你在汇编上的造诣是不可估量的! 11/30 22:21
- [zouhehui] 从你写的章末总结就看的出来你是一个非常细心,毅力很强的高手,很高兴认识你,我现在还是一只菜鸟,以后多 11/30 21:49
- [zouhehui] 你好,我也刚刚学汇编,我也想交一些朋友大家公共学习,希望我能成为你的朋友! 11/29 12:05