汇编学习笔记——寄存器

目录

寄存器

通用寄存器

通用寄存器拆分

变址寄存器

段寄存器与指针寄存器

代码段寄存器CS

指令指针寄存器IP

数据段寄存器DS

栈段寄存器SS

栈顶指针寄存器SP

基址指针寄存器BP

附加段寄存器ES

标志寄存器PSW

ZF(Zero Flag)零标志

PF(Parity Flag)奇偶标志

SF(Sign Flag)符号标志

CF(Carry Flag)进位标志

OF(Overflow Flag)溢出标志

DF(Direction Flag)方向标志

TF(Trap flag)陷阱标志

IF(Interrupt flag)中断标志


 

寄存器

定义:CPU内部用于信息存储的单元

示例:8086CPU中有14个寄存器

PS1:8086CPU中所有的寄存器都是16位(16b)的,可以存放两个字节(2B)

PS2:寄存器的大小与CPU的操作位数与CPU对应的字长相同,对于8086CPU,其寄存器大小、操作位数与字长皆为16位

 

通用寄存器

定义:可用于传送和暂存数据,也可参与算术逻辑运算,并保存运算结果的寄存器

示例:8086CPU中的AX寄存器

PS:以上为在AX寄存器中存储4E20H(0100111000100000B)时AX寄存器中实际的情况

 

通用寄存器拆分

定义:在8086CPU中,可将一个16位通用寄存器拆分为两个8位通用寄存器使用

示例:AX寄存器可拆分成AH和AL,其中AH代表AX中的高8位,AL代表AX中的低8位

PS1:将16位寄存器拆分成两个8位寄存器实际上是为了保证其能兼容8位CPU时代的软件程序,如8088CPU的寄存器便是8位的。

PS2:AX对应AH和AL;BX对应BH和BL;CX对应CH和CL;DX对应DH和DL

 

变址寄存器

定义:与通用寄存器功能相似,常用于存储段寄存器的偏移地址。其与通用寄存器的区别在于变址寄存器不可拆分为两个8位寄存器。其中SI(source index)称为源变址寄存器DI(destination index)称为目标变址寄存器

示例:变址寄存器的使用

PS:如上,变址寄存器作为偏移地址使用,关于以上中括号写法的意义,见汇编学习笔记——寻址与存储的对内存寻址部分

 

段寄存器与指针寄存器

定义:用于存放段地址和对应指针的寄存器

示例:8086CPU中包含的段寄存器

PS1:以上列出的四个断寄存器的作用正如其名,分别用于存放不同的内容

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值