汇编--学习笔记(一)-寄存器(二)

来源:互联网 发布:页游服务端源码 编辑:程序博客网 时间:2024/06/10 04:07

一、通用寄存器

(1)数据寄存器(4个通用寄存器)

全称(16位) 高8位 低8位 AX AH AL BX BH BL CX CH CL DX DH DL

- AX:累加器。这是个16位的寄存器,可以拆成AH(高位置的8位)和AL(低位置的8位)来用,通常用在相乘或相除存放运算结果(另外还有I/O字串。。。)
- BX:基地址寄存器。同上可以拆成BH和BL,主要用在间接“基底”定址法上。
- CX:计数寄存器。同上可以拆成CH和CL,主要用来当计数器。
- DX:数据寄存器。同上可以拆成DH和DL,有时配合AX使用,有时用来存取数据。
这四个寄存器可以随便存数据,但还是有些特殊的功能。

(2)指针寄存器

  • BP:基地址指针寄存器
  • SP:堆栈指针寄存器

(3)变址寄存器

  • SI:源变址寄存器。常配合字符串的处理,或使用变址寻址方式当数组使用(16位)。
  • DI:目标变址寄存器。常配合字符串的处理,或使用索引定址法当数组使用(16位)。

二、段寄存器

(1)代码段:CS,存放程序代码位置的段地址寄存器(16位)。
(2)数据段:DS,存放数据位置的段地址寄存器(16位)。
(3)堆栈段:SS,存放堆栈位置的段地址寄存器(16位,堆栈是一种先进后出的数据结构)。
(4)附加段:ES,这个段寄存器可以任意使用,但通常拿来存取字符串时使用(16位)。

原创粉丝点击