寄存器
通用寄存器
常用的寄存器分别为:AX、BX、CX、DX,这些寄存器均是16位。其中,
AX可以拆分为AH和AL两个八位的寄存器;
BX可以拆分为BH和BL两个八位的寄存器;
CX可以拆分为CH和CL两个八位的寄存器;
DX可以拆分为DH和DL两个八位的寄存器;
示例:
AX(16位):存储示例:2B51
AH(8位) :存储示例:2B | AL(8位):存储示例:51 |
---|
其他寄存器
DS:从内存单元的段地址(原理请看ADD指令第三图解)
CS:指向CPU将要执行指令的段地址。
IP: 指向CPU将要指向指令的偏移地址。
常用指令
MOV指令
作用:往某个寄存器中存入数据
格式: MOV 寄存器,数值
MOV 寄存器,寄存器
MOV 段寄存器,寄存器
MOV 寄存器,段寄存器
MOV 寄存器,[偏移地址]
MOV [偏移地址],寄存器
ADD指令
作用:把两个数值相加,将结果放到第一个数值容器中
格式:
ADD 寄存器,数值
ADD 寄存器,寄存器
ADD 寄存器,[偏移地址]
ADD [偏移地址],寄存器
JMP指令
作用:更改CS:IP寄存器的内容,以让CPU从新指定的内存地址开始继续执行指令。
格式:JMP 段地址:偏移地址
其他概念
代码段
概述:在内存中存放代码的连续内存单元
通常用CS寄存器作为此段的段地址,IP寄存器作为偏移地址
数据段
概述:在内存中存放数据的连续内存单元
通常用DS寄存器作为此段段地址,中括号内的偏移地址——[偏移地址]作为偏移地址
栈段
概述:在内存中存放栈内容的连续内存单元
通常用SS寄存器作为段地址,SP寄存器作为偏移地址