零基础入门学习汇编语言教程(汇编语言入门二)

发布日期:2024-12-22 11:03:20     作者:肌肤接触     手机:https://m.xinb2b.cn/tech/kkb368780.html     违规举报

8086 寄存器都是 16 位的寄存器,根据用途可分为 4 种类型分别是数据寄存器、地址寄存器、段寄存器和控制寄存器,我来为大家科普一下关于零基础入门学习汇编语言教程?下面希望有你要的答案,我们一起来看看吧!


零基础入门学习汇编语言教程

8086 寄存器都是 16 位的寄存器,根据用途可分为 4 种类型。分别是数据寄存器、地址寄存器、段寄存器和控制寄存器。

(1)数据寄存器

数据寄存器中每个寄存器又可以分为 2 个 8 位的寄存器。分别为 AH、AL,BH、BL,CH、CL,DH、DL。H 表示高字节(高 8 位)寄存器、L 表示低字节(低 8 位)寄存器。

例如:用 AX 寄存器存放一个字 1234H,表示为 (AX)=1234H,即高字节 12 放在 AH,低字节 34 放在 AL 中。

(2)地址寄存器

地址寄存器包括指针和变址寄存器 SP、BP、SI、DI 四个 16 位寄存器。

顾名思义,它们可用来存放存储器操作数的偏移地址。另外,它们也可以作为通用寄存器用。

(3)段寄存器

8086CPU 有 4 个 16 位的段寄存器,分别是 CS 代码段寄存器、DS 数据段寄存器、ES 附加段寄存器、SS 堆栈段寄存器。

(4)控制寄存器

控制寄存器包括 IP 和 FLAGS(又称为 PSW 程序状态字)两个 16 位寄存器,用于控制程序的执行。

IP 指令指针寄存器,用来存放代码段中的偏移地址,指出当前正在执行指令的下一条指令所在单元的偏移地址。

FLAGS 标志寄存器中的某位代表 CPU 的 1 个标志,表示出 CPU 的某种执行状态。最低位为 D0,最高位为 D15。8086CPU 的标志寄存器共有 9 个标志,分别为 6 个条件码标志和 3 个控制标志。

(1)条件码标志

CF 进位标志。当指令执行结果的最高位向前有进位时,CF=1,否则 CF=0。SF 符号标志。当指令执行结果的最高位(符号位)为负时,SF=1,否则 SF=0。ZF 零标志。当指令执行结果为 0 时,ZF=1,结果不为 0 时,ZF=0。OF 溢出标志。当指令执行结果有溢出(超出了数的表示范围)时,OF=1,否则 OF=0。AF 辅助进位标志。当指令执行结果的第 3 位(半字节)向前有进位时,AF=1,否则 AF=0。PF 奇偶标志。当指令执行结果中 1 的个数为偶数个时,PF=1,否则 PF=0。

(2)控制标志

DF 方向标志。执行串处理指令时,若设置 DF=0,存储单元的地址寄存器的值自动增加,若设置 DF=1,存储单元的地址寄存器的值自动减小。IF 中断标志。设置 IF=1,允许 CPU 响应可屏蔽中断,IF=0 则不响应。TF 陷阱标志。在 DEBUG 调试时,TF=1,采用单步执行方式,即进入陷阱;TF=0,正常执行程序。

在 DEBUG 调试环境下以字母缩写的形式表示各个标志位的状态。进入 DEBUG 后,用 R 命令查看寄存器状态时,可以看到除了陷阱标志以外的标志位的状态。

 
 
本文地址:https://xinb2b.cn/tech/kkb368780.html,转载请注明出处。

推荐图文
推荐科技知识
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  违规举报  |  蜀ICP备18010318号-4  |  百度地图  | 
Processed in 0.031 second(s), 1 queries, Memory 0.57 M