导航:首页 > 物理学科 > 堆栈指针的物理地址如何得出

堆栈指针的物理地址如何得出

发布时间:2023-03-20 19:49:14

① 汇编语言 SI DI BX BP SS DS 是什么 怎样根据这些求物理地址

SI、DI、BX、BP是8086CPU可用来作指针使用的寄存器,一般用来表示一个偏移量,具体的和寻址方式有关。
SS、DS是段地址寄存器。
由于8086CPU是16的,而其存储容量可达1MB,也就是20位的寻址空间,因此编程时用两个16位的地址来表示,即 段地址:偏移地址,它和实际地址,也就是物理地址的关系是:
物理地址=段地址×16+偏移地址

对于上面的寄存器,当作地址使用时,根据寻址方式不同,有一种默认关系,只要指令中出现BP作地址的,则其段地址为SS,否则就为DS。当然还有段前缀一说,这要看实际情况来定了。
比如:
MOV AX,[BX];则其物理地址=DS×16+BX
MOV AX,[BP];则其物理地址=SS×16+BP
MOV AX,[BX][SI] ;则其物理地址=DS×16+(BX+SI)
MOV AX,[BP][SI];则其物理地址=SS×16+(BP+SI)

② 在8086/8088 CPU中,SS:SP是什么地址相应的20位物理地址如何算出要取出这个地址

SS:SP表示的是
堆栈段地址(SS
stack
segment)下的堆栈指针(SP
stack
pointer)所指的位置
具体计算ss的十六进制数左移一位加上sp地址
(这些都是16进制数的操作)
比如十六进制数
ss:1000h
sp:2000h
结果
12000h
(也就是20位物理地址)

③ 汇编语言与接口技术怎么求物理地址

1.汇编语言 SI DI BX BP SS DS
SI: 16位寄存器,源变址寄存器
DI: 16寄存器,目变址寄存器
BX: 16位寄存器(28位寄存器BH,BL),基址寄存器
BP: 16位寄存器,基址指针寄存器
SS : 16位段寄存器作用存放前堆栈段段址般SP连用
DS: 16段寄存器, 作用存放前数据段段址

2.根据些求物理址
面几寄存器跟求物理址谈关系.
公式: 物理址 = 基础址 + 偏移址 = CS*10H(基础址)+ IP(偏移址)
CS: 16位段寄存器,存放前代码段段址
IP: 存放条要执行指令偏移址

LZ明白追问

④ 栈顶物理地址怎么求

栈顶物地=1200*16+0100=12100H
栈底物地=1200*16+0000=12000H
因为(SP)=0040H,所以,在0040H单元中存放的是34H,0041H存灶笑放的是滑辩尘12H,此时SP指信禅向0042H

⑤ 在执行PUSH AX指令后堆栈指针SP的内容和栈顶字单元的内容怎么算

PUSH操作会使SP指针向前移
栈指针搭手SP=FFEH
栈顶内容是知启嫌5634H
栈顶逻辑地址旁简就是FFEH,物理地址:406FEH
(仅供参考,TOO)

⑥ 堆栈操作时物理地址是怎么形成的

你好!
堆栈的段地址由段寄存器SS指定,栈顶由堆栈指针SP指向,所以堆栈操作时,
栈地址=SS*16+SP
打字不易,采纳哦!

⑦ 8086/8088求物理地址时那些CS,DS,SS,IP什么的有什么用要怎么求,求教!

...
求物理地址时基本上恩他们没太大关系吧。。
他们只是存放数据的寄存器(相当与变量),比如把1234放到cs里,以后写cs就是1234这个东东。
然后后来就有人规定一些东西一般只放特定含义的东西。
怎么说呢,就像2l说的cs是放段基址的,在8086里一个20位的地址是由2个16位的地址构成的,所以要两个16位的寄存器才能表示一个地址,cs里的内容+另一个特定的寄存器里的内容构成一个特定的地址而且这个地址是程序的......ds+另一个构成...数据地址的..ss一般用于堆栈的。比较复杂,还是看看书把,和寻址有关。当访问不同的东西(程序,数据,堆栈)时会配上不同的(cs,ds,ss)段寄存器。
至于物理地址的求法:
一个8086里地址是20位的它由两个16位的数构成,一个叫段地址,一个叫偏移地址,
实际物理地址=段地址*10H+偏移地址,
10H是十六进制的10,(一般地址都是给出16位的形式。所以一般就是段地址后面加个0再与偏移地址相加。在程序中依据访问不同内容段地址在cs,ds,ss中选(特殊的寻址除外),例如用ip做偏移地址时,会调用cs作为段地址,实际物理地址就是cs*10h+ip,...)

⑧ 关于堆栈的物理地址问题

物理地址的求法都一样,不管腔祥桥是堆栈还是数据段
堆栈的物理地址是宴橘:段首地址*16+偏移地址,
如上题
段伍猛首地址及为SS内的内容,2345h*16=23450H
偏移地址是SP内的内容,所以物理地址是23450H+0100H=23550H
若堆栈存放10B个数据,由堆栈的特性可知,sp的内容要-10
所以,sp的内容为0096H
希望我的回答能帮到你

⑨ 堆栈顶的物理地址

栈底局正的逻辑地址 1250H:0100H
SP=栈底弊碰-5*2=0100H-AH=00F6H
SS=1250H
栈低物理地址 1250H*16+0100H=12600H
栈顶物理地址租腊谈 1250H*16+00F6H=125F6H

⑩ 以DP和SP为基地址的直接寻址方式,其实际地址是如何生成的

基址寄存器有BX和BP,用来储存偏移地址。
BX的默认段地址是DS,BP的默认御答段地址是SS。
实际的物理地址=段地址×10H+偏移镇渗慧地址。
有时BP和堆栈指针喊唯SP联合使用的,作为SP校准使用,物理地址=SS×10H+BP+SP

阅读全文

与堆栈指针的物理地址如何得出相关的资料

热点内容
word中化学式的数字怎么打出来 浏览:704
乙酸乙酯化学式怎么算 浏览:1372
沈阳初中的数学是什么版本的 浏览:1317
华为手机家人共享如何查看地理位置 浏览:1010
一氧化碳还原氧化铝化学方程式怎么配平 浏览:848
数学c什么意思是什么意思是什么 浏览:1369
中考初中地理如何补 浏览:1260
360浏览器历史在哪里下载迅雷下载 浏览:671
数学奥数卡怎么办 浏览:1350
如何回答地理是什么 浏览:989
win7如何删除电脑文件浏览历史 浏览:1022
大学物理实验干什么用的到 浏览:1448
二年级上册数学框框怎么填 浏览:1659
西安瑞禧生物科技有限公司怎么样 浏览:829
武大的分析化学怎么样 浏览:1213
ige电化学发光偏高怎么办 浏览:1301
学而思初中英语和语文怎么样 浏览:1606
下列哪个水飞蓟素化学结构 浏览:1388
化学理学哪些专业好 浏览:1452
数学中的棱的意思是什么 浏览:1017