【解析】 乘以十六相当于二进制的数后面加4个零,左移四 位。空出4个零正好用来加偏移地址。 结果一 题目 【题目】8086CPU给出物理地址的方法段地址X16+偏移地址=物理地址,而段地址是针对内存的分段而言的,将每一段的段首地址定义为段地址。问:段地址为什么要X16有什么含义? 答案 【解析】 乘以十六相当于二进...
偏移地址为16位,16位地址的寻址能力为64KB,所以一个段的长度最大为64KB。(因为一个段是通过“基础地址(段地址x16)+偏移地址=物理地址”来寻找地址的,所以当一个段的起始地址由段地址确定后,大小也就是范围就会由偏移地址的寻址能力决定) 3. 内存单元地址小结 CPU访问内存单元时,必须向内存提供内存单元的物理地址。
总结:内存中有些内存单元不能作为段的首地址(段地址x16),因为有些物理地址不是16(10H)的倍数,但是段地址可以是任何地址因为它要乘16,无论地址是多少都可以,注意我这里说的段地址并不是内存中的地址,因为段地址是16位,内存的物理地址是20位,前面说的首地址(在偏移为0的情况下)可以看成内存中段的起始物理地址...
实际物理地址=段地址X10H(16<十进制>、2^4<二进制>)+偏移地址,所以对于固定的段地址,其寻址能力取决于偏移地址的个数,因为偏移地址存储在16位寄存器中,所以能够表示的最多地址数(二进制数)为2^16=65536字节=64K字节,因此对于固定的段地址,其最大寻址能力为64K。因为段地址都是10H(16<十进制>)的倍数,所以相...
怎么拆?就是尽量满足cpu,我先给你16位(每16位是一个段),称为段基址,剩下那4位放在一个专门的寄存器里,称为偏移量。然后要用的时候,把段基址左移四位+偏移量,组合起来用就行了。这就像一个门牌号276,你记得时候分成27和6记,用的时候把27左移一位+6=270+6 就行了。就这么简单 ...
二进制,左移二位,右边添一个 0,就是乘以 4;左移三位,就是乘以 8;左移四位,就是乘以 16。乘什么乘!填上四个二进制的 0,(或一个16进制的 0),就完事了。CPU,它也就是左移四位,添上 0 就完了。哪里用了什么乘法!在此处说到乘法,都是教师自己在那瞎编乱造,骗学生的。