什么是基址啊

2024-12-04 21:31:04
推荐回答(2个)
回答(1):

在以前,电脑的寄存器都是十六位的,数据总线是二十四位的(内存16M),所以单用一个寄存器无法寻址到所有地址,因此用两个寄存器或一个寄存器加一个立即数,用cs,ds,ss,es等以s结尾的寄存器作为段寄存器,用一个寄存器或立即数做偏移量,因为两个十六位寄存器加起来是三十二位,比数据总线位数宽,所以分段寻址采用了如下的寻址方式:段寄存器×100(十六进制)+偏移量,这样所计算出来的就是一个二十四位的数据,就可以寻址到所有地址,其中段寄存器×100(十六进制)所得到的地址就是段的基址,所以基址都是以00(十六进制)结尾的。而现在的寄存器都是三十位的,寻址可达4G,而通常电脑内存是没有大于4G的,所以就不用分段,用一个寄存器就可以寻址全部地址了。所以现在电脑的段寄存器都用来有其他的用途。

回答(2):

你是在学某个体系结构的寻址模式吗?基址的概念一般在带位移的寄存器间接寻址中出现,该寻址模式用以实现数据结构和编写与位置无关的代码(可重定位).我建议你初学某种汇编应该先学该计算机体系结构(ISA),汇编本质上就是人可读的机器码.