一个有128个字的数据区,它的起始地址为12ABH; 00ABH,请给出这个数据区最末一个字单元的物理地址是()

2024-11-29 17:29:35
推荐回答(5个)
回答1:

首先要确定"字"是多大,每个地址里面有几位数据。
看这个起始地址,这是8086的机器。所以字长是16位。每个地址里面有8位。
8086的物理地址与地址之间的关系:物理地址 = 段地址*10H + 偏移地址
根据以上几点,很容易完成计算。
第一步,
因为,8086的物理地址与地址之间的关系:物理地址 = 段地址*10H + 偏移地址,

所以,这个数据区的最开始单元的物理地址在:12ABH*10H+00ABH

第二步,问题问的是这个数据区最末尾一个字单元的物理地址。所以,就是要算一下相对的偏移量,加在起始的物理地址上即可。
题目里面说数据区大小为128个字。前面说了这个题目里面的“字”是16位。所以,最末的一个字的单元相对起始地址的偏移量为,(128-1)字。一个字是16位,一个地址里有8位,每个字偏移量为2。所以偏移量是(128-1)*2=254。换算为16进制,为FEH。
所以这个数据区最末一个字单元的物理地址是,

起始物理地址+偏移量=(12ABH*10H+00ABH)+FEH=12AB0+ABH+FEH=12C59H

回答2:

前面那个地址应该是数据段基址吧。128个字就是256个字节,以后面那个地址为起始偏移地址的话,就是00ABH+256-1=0300H,加上段基址的16倍,12AB0H+0300H=12DB0H,由于是字,再减1,得12DAFH,没答案。若以前面那个为起始偏移地址的话,用相同算法得:1FAFH。不明白了。

回答3:

12AB0H+00ABH+FEH=12C59H
128字,256字节,256=100H,100H-2H=FEH

回答4:

这个数据区的首物理地址为12AB0+00AB = 12B5B ,
然后末尾地址为12B5B + (128-1)* 2 等于12B5B + 254.
而254的15进制为FE,
相加之后,末尾地址就是12C59 H了

回答5:

C