热心网友
回答时间:2024-05-17 02:55
汇编寻址内存空间不是指物理内存条空间,它是在物理内存的实现基础上加以抽象的一个名词。
比如说,物理内存可以是内存条上的内存,但物理内存不仅限于内存条,像WINDOWS采用的虚拟内存技术,它使用硬盘空间,以页为单位,由操作系统控制下,与真实内存进行数据交换,从而达到加大内存容量目的,当然,它能部分缓解内存不足的问题,但其速度和内存条内存是不可同日而语的。
80386以上CPU可以寻址4G内存,寻址的是哪些内存,我的内存条才2G,那么好的CPU是不是浪费
80386使用32位寄存器寻址,共可寻址2的32次方=4G的内存,也就是说,如果你安装了6G的内存条,32位系统是只认4G的,除非在操作系统层上加以改进,也就是改进寻址方式,像早期16位DOS操作系统时,寄存器16位,只可寻址2的16次方=64K内存,但DOS操作系统不是采用寄存器寻址,而是采用段基址:段偏移的寻址方式,从而突破这一*,实现了寻址1024K=1M的目的。
80386以上CPU可以寻址4G内存,只是说操作系统支持那么多内存,不是说一定要有这么多的内存容量,当然,内存大更好,那是指该操作系统的支持极限。
操作系统寻址的内存就是真实内存和虚拟内存。 它内部有相应的标志,当操作系统发现寻址的是虚拟内存时,它会生成一个异常,这时操作系统就要进行页交换了,它从虚拟内存,也就是硬盘空间将内容读至真实内存进行处理,具体怎么读,怎么实现那是操作系统的事了。
收起
热心网友
回答时间:2024-05-17 02:56
是的汇编的寻址都是指向我们所用的内存条中```从内存中提取数据到寄存器中再交付于CPU处理
寻址方式分别为七大类
1.立即寻址方式:操作数在指令中给出
注意:只能用于SRC操作数,SRC与DST的字长一致
2.寄存器寻址方式:操作数在指定的寄存器中
注意:SRC与DST的字长必须一致,CS不能用MOV修改
(以下归纳为存储器寻址方式,地址从内存单元中取出)
3.直接寻址方式:有效地址EA由指令直接给出
通过给出来的地址得到具体值
注意:
a.隐含的段为数据段(DS)
b.可以使用段跨越前缀,如mov ax,es:[2000h]
c.操作数可由变量表示 如mov ax,word ptr value可以存放字节到字
4,寄存器间接寻址方式:EA在基址寄存器(BX/BP)或变址寄存器(SI/DI)中
注意:
a.不允许使用AX、CX、DX存放EA,例如:mov ax,[cx]是错误的
b.SRC与DST的字长必须一致
c.如果使用BP基址寄存器,则段为SS(堆载段)
5.寄存器相对寻址方式:在寄存器间接寻址方式上添加了一个8/16位的偏移量
注意:mov ax,count[si]=mov ax,[count+si]
6.基址变址寻址方式:基址+变址
注意:必须是一个基址寄存器与一个变址寄存器的组合
7.相对基址变址寻址方式:在基址变址寻址方式中添加一个8/16位的偏移量
注意:mov ax,mask[bx][si]=mov ax,mask[bx+si]=mov ax,[mask+bx+si]
收起