【汇编语言 - 王爽】寄存器

本文详细介绍了8086CPU的寄存器结构,特别是通用寄存器的使用,并讲解了字在存储器中的存储方式、汇编指令的应用,以及物理地址的生成方法。内容涵盖了8086CPU如何通过段地址和偏移地址合成物理地址,并探讨了16位结构的CPU特点。同时,文章还讨论了代码段的概念,以及如何通过CS和IP寄存器控制指令执行流程。
摘要由CSDN通过智能技术生成

引言

CPU运算器、控制器、寄存器等器件构成, 这些器件靠内部总线相连。

  • 运算器进行信息处理
  • 寄存器进行信息存储
  • 控制器控制各种器件进行工作:
  • 内部总线连接各种器件, 在它们之间进行数据的传送

对于一个汇编程序员来说, CPU中的主要部件是寄存器。寄存器是CPU中程序员可
用指令读写的部件。程序员通过改变各种寄存器中的内容来实现对CPU的控制

不同CPU寄存器个数结构是不相同的。

8086CPU有14个寄存器, 每个寄存器有一个名称。这些寄存器是: AX、BX、CX 、DX、SI、DI、SP、BP、IP、CS 、SS、DS、ES、PSW。

一、通用寄存器

8086CPU 的所有寄存器都是16 位的, 可以存放两个字节。AX、BX、CX、DX这4
个寄存器通常用来存放一般性的数据, 被称为通用寄存器

在这里插入图片描述

8086CPU的上代CPU中的寄存器都是8位的,为了保证兼容。使运行于上代CPU的程序稍加修改就可以运行在8086之上,8086CPU的AX、BX、CX、DX这4个寄存器都可分为两个可独立使用的8位寄存器来用:

AX:AH和AL

BX:BH和BL

CX:CH和CL

DX:DH和DL

例如

数据:18
二进制表示:10010
在寄存器AX中的存储:

在这里插入图片描述

以AX为例,8086CPU的16位寄存器分为两个8位寄存器的情况如图2.3所示。

在这里插入图片描述

AX的低8 位(0位~7位)构成了AL寄存器, 高8 位(8 位~15 位)构成了AH寄存器。AH 和AL寄存器是可以独立使用的8位寄存器。

AH和AL独立使用

在这里插入图片描述

二、字在存储器中的存储

位(bit):表示信息的最小单位

字节(byte):1byte = 8bit

字(word):1word = 2byte = 16bit(一个字可分为高字节和低字节)

对于16位的寄存器,可以把16位看成一个数,也可以把高八位和低八位分别看出一个数。(如图2.4)

进制

二进制结尾加B

十进制照常写

十六进制结尾加 H

十六进制可以看成是二进制的简写!

各种进制都可以表示数 ,但是由于人们习惯十进制,所以都会把数转换成十进制!!!

三、几条汇编指令

汇编指令和寄存器名称不区分大小写

汇编指令 控制CPU完成的操作 用高级语言的语法描述
mov ax,18 将18送入寄存器AX AX=18
mov ah,78 将78送入寄存器AH AH=78
add ax,8 ax在原有的数值上加8 AX += 8
mov av,bx 将BX数据送入AX AX=BX
add ax,bx 将AX
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值