寄存器:
CS:IP寄存器构成了代码地址 CS为代码段寄存器 IP为代码偏移寄存器
DS 为数据段寄存器
SS:SP构成栈地址 SS为栈段寄存器 SP为栈偏移寄存器,设置时应接连设置,因为ss传值和sp传值中间的语句不会引起中断
CX寄存器,通常用在loop循环中,记录循环次数
BX一般用作偏移地址寄存器
SI,DI寄存器功能类似于BX,不同点是不能拆分成两个八位寄存器,都用于定位内存地址
ZF 零标志位 PF 奇偶标志位 SF符号标志位 CF 无符号进位标志位 OF 有符号溢出标志位 DF 方向标志位,在串处理指令中,控制每次操作后,si/di递减或递增
TF 中断标志位,TF=1则引起单步中断,这实现了编译器的单步调试功能
IF 屏蔽中断标志位,IF=1则响应中断,IF=0则屏蔽中断
汇编指令
MOV 赋值指令 MOV 不能直接给段寄存器赋值,需要通用寄存器中转 通用寄存器 ax,bx,cx,dx等 mov的指令类型是通用数据传送,传送的是数据
lea 赋值语句 lea的指令类型是目的地址传送,传送的是地址
add 累加语句 add ax,bx 意思 ax = ax+bx
sub 减法语句 sub ax,bx 意思 ax = ax-bx
jmp 跳转语句 后面跟代码地址 CS:IP 只跟IP代表当前段
test 判等语句,常搭配后面使用
CMP 判等语句 仅影响标志位
cmp ax,bx,执行后
zf=1,说明(ax)=(bx)
基于8086CPU的汇编学习笔记
最新推荐文章于 2024-06-06 11:11:31 发布
本文详细介绍了8086CPU的汇编语言学习,包括寄存器的用途,如CS:IP、DS、SS:SP、CX、BX、SI、DI、ZF等,以及常用汇编指令如MOV、ADD、SUB、JMP、TEST、CMP等的使用,并讲解了条件跳转、栈操作、循环、乘法、串处理和中断处理等概念。
摘要由CSDN通过智能技术生成