中易网

什么是jmp指令的近转移和远转移

答案:2  悬赏:30  
解决时间 2021-02-21 10:00
什么是jmp指令的近转移和远转移
最佳答案
jmp指令的近转移是指在同一个段里面的转移,也叫做段内近转移,用汇编编码就是这样的jmp near ptr 标号

jmp指令的远转移是指段与段之间的转移,就是说不在同一个段的转移,用汇编编码就是这样的jmp far ptr 标号
全部回答
(1)根据位移进行转移的jmp指令jmp short 标号(转到标号处履行指令)这类格式的jmp指令实现的是段内短转移,它对ip的修改范围为⑴28~127,也就是说,它向前转移时最多超出128个字节,向后转移最多可超出127个字节。指令中的“short”符号,说明指令进行的是短转移。“标号”是代码段中的标号,指明了要转移的目的地址,转移指令结束后,cs:ip应当指向标号处的指令。原理:该指令所对应的机器码中,其实不包括转移目的地址,而包括的是转移的位移。即:(ip) = (ip) + 8位位移1、8位位移 = “标号”处的地址 - jmp指令后的第1个字节的地址2、short指明此处的位移为8位位移。3、8位位移的范围为⑴28~127,用补码表示4、8位位移由编译程序在编译时算出。jmp near ptr 标号 段内近转移 ,和上同理(ip) = (ip) + 16位位移1、16位位移 = 指令“标号” 处的地址 - jmp指令后的第1个字节的地址2、near ptr指明此处的位移为16位移,进行的是段内近转移。3、16位位移的范围为⑶2768~32767,用补码表示。4、16位位移由编译程序在编译时算出。(2)转移的目的地址在指令中的jmp指令指令“jmp far ptr 标号”实现的是段间转移,又称为远转移。功能以下:(cs) = 标号所在段的段地址:(ip)=标号在段中的偏移地址。far ptr指明了指令用标号的段地址和偏移地址修改cs和ip。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
玩游戏时,用什么软件听歌不卡?玩lol
一天到晚戴口罩有没一偶危害
我是淘宝卖家,发货前明明检查了衣服才发货的
汽车开空调干燥瓶到膨胀阀管发生震动是怎么回
谁有重生之王爷妻管严这本书里面副cp的同人文
天津市河北区民政局在哪里啊,我有事要去这个
枣庄地名的由来是什么?
为什么我的单片机开发板不能烧89c52的程序啊
韩国gmarket上的东西便宜吗?常听人说起,从
Vanward/万和JSQ24-320T12热水器好吗
破壁机用绿豆做逗浆
飞机要是被雷劈坏了是不是就会没有生还的可能
它仅仅约两公里的英语
移植柿子树犯法吗
襄阳天和威电气有限公司地址在哪,我要去那里
推荐资讯
山西到大连运煤汽车运费是多少
中信信用卡额度提升五千为什么又给降回了三千
用安琪发面放了酸奶可以吗
0.56除以零点2=多少除以一你是怎么想的
纯情犀利哥现在在写那部作品
实德塑窗地址在哪,我要去那里办事
热血江湖游戏里结婚后人物名字上的称号怎么不
刚度和刚性一样吗?
百信药业福益康大药房我想知道这个在什么地方
想当英语老师是报考外国语大学好还是师范大学
天天见果蔬店怎么去啊,有知道地址的么
佛山不锈钢加工地址在什么地方,想过去办事
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?