首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >关于8086微处理器内存

关于8086微处理器内存
EN

Stack Overflow用户
提问于 2019-01-23 22:47:15
回答 1查看 108关注 0票数 0

据说8086微处理器有1MB的内存和20位地址,16位数据总线。我的疑问是,如果它是1MB内存,那么意味着(2^20 * 2^3) (1字节=8位)位或2^23位就是整个内存大小。那么,由于8086是一个16位寄存器,那么2^20 (来自地址线)* 2^4( 16位大小)就是内存,即2^24位,这不是我上面计算的值。因此,我的评估是错误的,这是什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-01-23 23:12:04

2^20个地址中的每个地址都指向一个8位字节。

8086的一些机器指令在字节(8位)上操作(使用寄存器AH、AL、BH、BL ...)和其他机器指令对字(16位)进行操作(使用寄存器AX、BX等)。

使用字指令时,存储器中的两个相邻字节(地址(a)和(a+1))被视为字数据。我不记得8086是否强制字数据存储器引用的地址对齐。但是,2^20字节只包含2^19个字(与偶数地址对齐)。

位是保守的:(2^20 * 2^3) = (2^19 * 2^4) = 2^23

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54329829

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档