Advertisement

第3章 寄存器复习(内存访问)

阅读量:

寄存器(内存访问)

之前从从访问内存的角度再来学几个重要的寄存器。

3.1、内存中字的储存

在CPU中,一个字由16位寄存器存储(占用了两个相邻的字节)。然而,在内存系统中,默认采用的是以单个字符形式组织的数据结构(即每个数据项占用单独的一个字符位置)。因此,在内存中实现这一点时

所以我们可以定义一种叫做"内存块"的概念:**内存块即用于存储一个16位字符的数据块(占两个相邻的内存位置),这种数据存储结构通常用带有前缀N的标识符来指代这类内存区域。**一般情况下我们会用带有前缀N的标识符来指代这类内存区域。

3.2 DS和[address]

当CPU试图读取内存单元时

mov bx, 1000H
mov ds, bx
mov al, [0]

上面的三条指令将 10000H(1000:0)中的数据读到 al 中。

由于8086CPU无法直接将内存数据加载至ds段寄存器 ,因此必须首先将内存数据加载至bx通用寄存器中,并随后完成寄存器间的转移操作。

在汇编语言程序中,“mov al, [O]”这一指令片段中,“[]”标识的是一个存储位置或者说是存储单元。“[]”内部的那个"O"则具体指的是该存储位置所指代的位置偏移值。“O”的单位是内存偏移量。“8OCA会根据DS寄存器中的当前值来确定当前程序运行

全部评论 (0)

还没有任何评论哟~