8086/8088CPU的储存器结构(二)

一、储存单元

1.存储单元的地址

(1)定义:将存储单元编号,即为地址

(2)表示:十六进制

2.存储单元的内容

定义:存储单元中存放的信息称为该存储单元的内容

表示:存储地址加()

若X单元中存放这Y,而Y又是一个地址,则可用(y)=((X))来表示Y单元的内容

(字节单元名称)=具体内容

注意区分字节单元和字单元

字节单元8位,字单元16位(低地址的内容作低八位,高地址的内容作高八位),

双字单元,根据字单元,往高地址类推,共32位

二、内存分配

1.存储器地址分段的原因和方法

(1)原因:CPU有20根地址总线A19~A0,可以访问存储器的最大容量为2^20B=1024KB=1MB.

    但是,在CPU中所有可用来存放地址的寄存器都是16位的,用什么来提供20位的地址呢?

此时储存地址分段就派上用场。把1MB的存储空间划分为若干个段,每个段由1到64KB(即65536B)个连续的字节单元组成。每个段是一个可独立寻址的逻辑单位。

(2)分段的基本规则

每个段最大可达64KB,因此,段内地址可用16位来表示。 但是计算机对段的起始地址有限制,段不能起始于任意地址,必须从任意一小段的首地址开始。

计算机规定:从0地址开始,每16个字节为一小段

(3)段地址

表示一个段的开始

(4)偏移地址

在段内相当于段起始地址的偏移值。当偏移量为0,就是这个段的起始单元,当偏移量为0FFFFS时,就是这个段的最后一个字节单元。

(5)物理地址和逻辑地址

每一个存储单元都有两种形式的地址,即物理地址和逻辑地址。

每一个存储单元的物理地址是唯一的,就是这个单元的地址编码。 

在程序设计中,程序员使用的是逻辑地址,而不使用物理地址,这不仅有利于程序的开发,且对存储器的动态管理也是有利的。

一个逻辑地址是由段地址和偏移地址两部分组成,而且都是无符号的16为二进制数

2.物理地址的形成

计算公式

物理地址=段地址×10H+偏移地址  (段地址向左平移一位加上偏移地址)

每个存储单元物理地址是唯一的,但是可由不同的段地址和不同的偏移地址组成 

3.隐含段和偏移寄存器

缺省16位段+偏移寻址组合

偏移地址存在地主要用途
CSIP指令寻址
SSSP或者BP堆栈寻址
DSBX, DI,SI或16位数数据寻址
ES串指令DI目标串寻址

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值