汇编-基础知识

基础知识

汇编语言的主题是汇编指令。汇编指令和机器指令的区别在于指令的表示方法上。汇编指令是指机器指令便于记忆的书写格式。

汇编语言的组成:

汇编指令:机器码的助记符,有对应的机器码。
伪指令:没有对应的机器码,由编译器执行,计算机并不执行。
其他符号:如+、-、*等,由编译器识别,没有对应的机器码。

存储器

微机存储器的容量是以字节为最小单位计算的。

CPU与外部数据的交互:

存储单元的地址(地址信息);
器件的选择,读或写的命令(控制信息);
读或写的数据(数据信息);

计算机中连接CPU和其他芯片的导线成为总线。总线逻辑上又分为地址总线、控制总线和数据总线。

地址总线的宽度决定了CPU的寻址能力;
数据总线的宽度决定了CPU与其他器件进行数据传送时的一次数据传送量;
控制总线的宽度决定了CPU对系统中其他器件的控制能力。

寄存器

在CPU主要包含运算器(数据处理)、寄存器(数据存储)、控制器(控制器件工作)、内部总线(连接各器件)。

Intel8086CPU主要包含14个寄存器。分别为:AX、BX、CX、DX、SI、DI、SP、BP、IP、CS、SS、DS、ES、PSW。其中AX、BX、CX、DX通常用于存放一般性数据,称为通用寄存器。CS、DS、SS、ES用于存储段地址,称为段寄存器。IP寄存器称为指令指针寄存器用于存储偏移地址。段地址乘以偏移位得到基础地址,基础地址+偏移地址=物理地址。其中CS为代码段寄存器,可以通过修改CS和IP的内容来实现修改CPU中的寄存器,从而控制CPU的目的。

Intel8086CPU中段寄存器不能直接对内存单元操作,可以通过使用通用寄存器来间接修改段寄存器的值。

能够修改CS和IP内容的指令称为转移指令。

eg:

mov ax,1000H
mov CS,ax;

DS和内存单元地址用于对内存或寄存器进行操作。

eg:

mov  ax,1000H
mov  DS,ax
mov DS,[0]//偏移单元地址为0的内存单元。

SS和SP用于对栈进行操作,SS用于设置栈的基础地址,SP用于设置栈的偏移地址。

eg:

mov sp,100H
mov ax,1000H
mov ss,ax
push 1000H

猜你喜欢

转载自blog.csdn.net/qq_37774304/article/details/86646891