作业帮 > 数学 > 作业

微机原理求物理地址的问题,那个乘16的含义是左移4位,那计算的时候应该怎么算?

来源:学生作业帮 编辑:搜搜做题作业网作业帮 分类:数学作业 时间:2024/07/03 13:29:16
微机原理求物理地址的问题,那个乘16的含义是左移4位,那计算的时候应该怎么算?
在8086中,段寄存器CS=1200H,指令指针寄存器IP=0FF00H,此时指令的物理地址等于多少?
答案是21F00H
微机原理求物理地址的问题,那个乘16的含义是左移4位,那计算的时候应该怎么算?
物理地址的计算方法是段地址左移一位十六进制数,再加上偏移地址.就像你这个题目中的算法就是:12000H+0FF00H=21F00H.物理地址的计算方法都是如此.只要把相应的段地址左移一位再相加就可以.但有时候需要判断它对应的段地址.
这种题目相对来说是很简单的,只要把题目中给出的十六进制段地址左移一位,最后一位补零就可以的.
再如CS=2100H,IP=02100H.则物理地址为:2A000H+02100H=2C100H
再问: 也看到很多例题都是你说的十六进制左移一位再补零这样做的。 那请再问下公式: 物理地址=段地址×16+偏移地址 中的×16是什么含义,左移四位又是怎么来的?(上课开小差这里没听到。。。)谢谢,必采纳
再答: 乘以16就是我说的十六进制的左移一位。因为题目中给我们的基本都是十六进制的数。所以我们只需要将十六进制数左移一位就可以,就相当于原数据乘以16。左移四位则是相对于二进制而言的。二的四次方就是十六。这就是为什么我们的公式中写的是乘以16而不是左移几位的原因。公式中的16只代表十进制的16这个数,但是实际应用时,题目中常常会给我们不同形式的数据,这是我们就要根据题目中给的数据的格式来算,一般的是先转换成十六进制数再算。那样是最简单的。 我相信你对进制转换应该不陌生吧。希望你能理解,希望能让你对这个公式有一个深入的了解。