汇编 学习笔记2

Posted 布图

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了汇编 学习笔记2相关的知识,希望对你有一定的参考价值。


一个典型的CPU由运算器,控制器,寄存器等器件组成

内部总线实现CPU内部各个器件之间的联系,外部总线就是地址总线,控制总线等的这些联系CPU和主板上其他器件的联系

8086CPU的所有寄存器是16位的


  • 16位的CPU一次性最多可以处理16位的数据
  • 通用寄存器最大宽度为16位(状态寄存器这些不一定是16位)
  • 寄存器与运算器之间的通路是16位
  • 8086有20位的地址总线,寻址能力为1M
  • 但是内部CPU却是16位

所以20位是由两个16位的数据进行加工得来的,可以看一下下图,段地址是16位,偏移地址是16位的,经过地址加法器

地址加法器合成物理地址的方法:

物理地址 = 段地址 x 16 + 偏移地址

也就是段地址左移4位加上偏移地址

这样是因为内存太大,寄存器性能不足导致的

例如:

21F60H

上面这个

地址可以由

2000H 1F60H

2100H 0F60H

等组成


习题:

  • 给定段地址为0001H,仅通过变化偏移地址寻址,CPU的寻址范围为 _ 到 _

物理地址=SA*16+EA

EA的变化范围为0h~ffffh

物理地址范围为(SA16+0h)~(SA16+ffffh)

现在SA=0001h,那么寻址范围为

(0001h16+0h)~(0001h16+ffffh)

=0010h~1000fh

  • 有一数据存放在内存20000H单元中,现给定段地址为SA,若想用偏移地址寻址到此单元,则SA 应满足的条件是?

最大为2000H很好解释,主要是是最小值,其实画一下图就出来了,答案是1001H - 2000H

以上是关于汇编 学习笔记2的主要内容,如果未能解决你的问题,请参考以下文章

汇编学习笔记-伪指令

学习笔记:python3,代码片段(2017)

汇编入门学习笔记 16X+Y

学习笔记从汇编看 a+++a与 a+a++的区别

学习笔记从汇编看 a+++a与 a+a++的区别

汇编学习笔记