JMP NEAR PTR BLOCK指令寻址方式式

jmp的参数有绝对地址与相对地址之分吗_百度知道
jmp的参数有绝对地址与相对地址之分吗
有的 具体操作请参考教课书引用:⑵ JMP NEAR PTR label 近转移(n哗讥糕客蕹九革循宫末ear jump)
近转移是JMP指令的缺省格式,可以写为&JMP label&。它可在当前代码段内转移,机器指令的操作码是E9,位移量是16位的带符号补码数。指令中的转向地址可以是直接寻址方式、寄存器寻址方式、寄存器间接方式和存储器寻址方式。
● JMP label 直接转移(direct jump)
执行操作:(IP) ← OFFSET label = (IP)当前+16位位移量
转移的目标地址在指令中可直接使用符号地址,由于位移量为16位,它的转移范围应是-32768至+32767,也就是说,近转移指令可以转移到段内的任一个位置。
● JMP reg 寄存器间接转移(register indirect jump)
执行操作:(IP) ← (reg)
转移的目标地址在寄存器中,例如指令&JMP BX&执行的结果,将BX的内容送给IP。
● JMP WORD PTR OPR 存储器间接转移(memory indirect jump)
执行操作:(IP) ← (PA+1,PA)
存储器的物理地址PA由指令中的寻址方式确定,JMP指令执行的结果,把PA单元的字内容送到IP寄存器中。例如&JMP WORD PTR [DI]&,物理地址PA = (DS)×24+(DI),指令执行的结果是(IP)= (PA+1,PA)。
其他类似问题
jmp的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁汇编JMP语句_百度知道
汇编JMP语句
JMP BX 与JMP [BX]是一样的吗
提问者采纳
一样。JMP BX是跳转到1234H去执行,取内存1234H中的内容5678H作为目标)虽然都是间接寻址的跳转指令,后者是内存数据寻址,未标明数据类型,JMP [BX] 这样写在语法上是错的,但寻址方式不同。JMP [BX]是跳转到5678H去执行(用BX中内容1234H作为地址。顺便说一下。前者是寄存器数据寻址,或者JMP DWORD PTR [BX](前一个是段内转移。假设BX的内容是1234H, 内存1234H单元的内容是5678H。正确的写法是JMP WORD PTR [BX]
JMP BX不是跳转到1234H去执行吧,你看看这个第2个问题
对追问的回复:这个题目的答案不完全正确,有错。第2题的指令写错了。有两点说明:第一点说明:第2题的题意是&JMP&WORD&PTR&[BX],不是JMP&BX。答案中目标地址的计算是按JMP&WORD&PTR&[BX]算得的,这个结果是对的。如果第二题的题目改成“使用BX寄存器的寄存器寻址方式的段内间接寻址”,才是JMP&&BX注意区别: &寄存器寻址&---&寄存器间接寻址间接转移时,数据可以用直接寻址、寄存器寻址、寄存器间接寻址、……等等所有的内存数据寻址方式。比如 JMP &WORD PTR &[4455H] 就是使用“直接寻址”的段内“间接转移”指令。第二点说明:直接寻址的目标地址:&指令中的位移量&+&当前指令的IP间接寻址的目标地址:指令中给出地址中取得的操作数(不加当前IP)直接寻址时指令书写的是目标地址的标号,但指令中存放的是当前IP与目标地址的位移量,所以第1题才需要做加法。间接寻址与直接寻址不同,指令中存放的就是目标地址的存放位置,而不是位移量。所以如果用JMP&BX&,那么BX的内容是多少,目标地址就是多少,不需要加上当前IP。你给出的题目中的第2题是另一种间接寻址,因为同样是间接寻址,所以获得的数据值0600H就是目标地址,同样也不需要再加上IP的值2BC0H。最后,给一个建议:学会使用调试程序。有教材的话就用DEBUG,不过它的界面不太友好,学会用它稍有一些难度。&特别推荐 Turbo Debugger,它比DEBUG要易学易用,非常非常好用。你遇到的这些困惑,只要自己在调试程序中验证一下,就能得到最可靠、最正确的答案。
提问者评价
其他类似问题
按默认排序
其他2条回答
实际上这个功能可以作如下描述:[si]jmp word ptr ds:偏移地址  以立即数改变段地址和偏移地址  jmp 0045H,实际上这个功能可以作如下描述://www,4因为跳转超过了范围jmp near ptr 标号以标号地址后第一个字的地址来改变IP,axjmp dword ptr ds:[si]jmp word ptr ds,实际上这个功能可以作如下描述.32767  jmp far ptr标号  以标号的段地址和指令地址同时改变CS和IP  jmp far ptr sign  段间转移   jmp word ptr 内存地址  以内存地址单元处的字修改IP,高地址内容修改CS:(IP)=(IP)+16bit位移16bit位移指的是从jmp指令后第一个字节开始算起  jmp near ptr sign  段内近转移  对IP的修改范围是-32768-&gt.com/sunt/archive//1887657,低地址内容修改IP,axjmp dword ptr ds,高地址内容修改CS: mov ax,下面这段代码就会出编译错误jmp short sdw 200 dup(2)shttp,内存单元可以以任何合法的方式给出  jmp word ptr ds:(IP)=(IP)+8bit位移8bit位移指的是从jmp指令后第一个字节开始算起  jmp short sign  段内短转移  对IP的修改范围是-128-&gt:偏移地址以立即数改变段地址和偏移地址jmp 0045H,内存地址可以以任何合法的方式给出jmp dword ptr [bx]段间转移s1 segmentdw 0a0bh:0020H  段间转移   jmp short 标号  以标号地址后第一个字节的地址来改变IP:(IP)=(IP)+16bit位移16bit位移指的是从jmp指令后第一个字节开始算起jmp near ptr sign段内近转移对IP的修改范围是-32768-&gt,内存单元可以以任何合法的方式给出jmp word ptr ds,s1mov ds,低地址内容修改IP:(IP)=(IP)+16bit位移16bit位移指的是从jmp指令后第一个字节开始算起  jmp near ptr sign  段内近转移  对IP的修改范围是-32768-&gt,实际算法是编译器根据当前IP指针的指向来计算到底偏移多少个字节来指向下一条指令,s1127,下面这段代码就会出编译错误jmp short sdw 200 dup(2)s,4因为跳转超过了范围  jmp near ptr 标号  以标号地址后第一个字的地址来改变IP, 0c0dhs1 ends…mov ax
JMP BX 跳转标识符所在JMP [BX] 跳转标识符的存储单元地址
是这个意思吗?BX: MOV AX,1234H
额,那个人说的对,我都忘了, 你看他的
jmp的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁IBM-PC汇编语言程序设计课后习题_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
评价文档:
喜欢此文档的还喜欢
IBM-PC汇编语言程序设计课后习题
汇​编​课​后​习​题
阅读已结束,如果下载本文需要使用
想免费下载本文?
把文档贴到Blog、BBS或个人站等:
普通尺寸(450*500pix)
较大尺寸(630*500pix)
你可能喜欢第3章 寻址方式. 罗文坚. 中国科大 计算机学院 .... 直接..
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
第3章寻址方式
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口指令JMP WORD PTR [BX]属于( )寻址_百度知道
指令JMP WORD PTR [BX]属于( )寻址
提问者采纳
寄存器间接寻址
段间的还是段内的
提问者评价
原来是这样,感谢!
其他类似问题
您可能关注的推广
寻址的相关知识
其他3条回答
动态寻址 indirect memory addressing mode
寄存器间接寻址,直接跳到偏移地址为bx寄存的内容所指的的内存中执行程序
寄存器间接寻址
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁}

我要回帖

更多关于 寄存器寻址方式 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信