专栏首页乱码三千8086汇编学习之jump指令

8086汇编学习之jump指令

作用

用于更改CS:IP的值

由于在8086cpu中更改段寄存器CS和指针寄存器IP的值不能直接使用mov赋值, 比如:

mov CS,3000H

mov IP, 0001H

以上写法不允许

那么, 如果我们需要给其赋值时, 其中一种替代方案就是使用jump指令,比如:

jump 3000H:0001H # 跳转到该代码段物理地址

如果段地址保持不变, 只是更改偏移地址, 那么需要借助通用寄存器, 如下:

mov ax,0002H
jump 3000H:0001H 
jump ax #等同于jump 3000H:0002H

则只需jump+保存偏移地址的寄存器 这种写法即可

注意不能直接jump 0002H 这样是不允许的

本文分享自微信公众号 - 乱码三千(infree6)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2021-08-11

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • x86汇编语言之8086语法和指令集

    上面使用db或者dw定义数据的方式,定义数据的同时就已经定义好了数据所在的物理地址, 如果我们想要从指定的内存地址中写入或者读取数据的话,需要借助段寄存器来实现...

    乱码三千
  • 8086汇编语言之debug模式常用指令介绍

    上面为 (段地址:偏移地址) 查看方式。D命令默认会显示寻址地址开始的后128个内存单元的内容,以16进制的方式显示(每个内存单元8位,一行最多16个内存单元)...

    乱码三千
  • X86保护模式入门简介

    以上概念简单了解. 我们要学的是保护模式 而之前 的16位汇编 王爽著作 都是讲的实模式.

    IBinary
  • Linux从头学03:如何告诉 CPU,代码段、数据段、栈段在内存中什么位置?

    前两篇文章,我们一起学习了 8086 处理器中关于 CPU、内存的基本使用方式,重点对段寄存器和内存的寻址方式进行了介绍。

    IOT物联网小镇
  • Debug究竟是什么意思?

    各位,相信你们都听过Debug这个词,那这个词在我们计算机领域究竟是什么意思呢?今天就在这和大伙简单说道说道,讲的不好不对的地方还请大家批评指正。

    7089bAt@PowerLi
  • 汇编语言之GNU ARM

    GNU最开始其实是一个操作系统,旨为打造一个开源免费自由的操作系统,目前操作系统还在完善中

    乱码三千
  • Linux 从头学 01:CPU 是如何执行一条指令的?

    这两年多以来,我的本职工作重心一直是在 x86 Linux 系统这一块,从驱动到中间层,再到应用层的开发。

    IOT物联网小镇
  • 汇编语言学习

       7、1Byte = 8bit ;    1KB = 1024B ;  1MB = 1024KB ;   1GB = 1024MB

    tandaxia
  • X64汇编之指令格式解析

    最近由于项目组内要做特征码搜索的东西,便于去Hook一些未导出函数,你懂得...于是就闲着学习了一下x86/x64的汇编指令格式。x86的汇编指令格式请参照ht...

    战神伽罗
  • 汇编语言全梳理(精简版)

    内存地址由 段地址:偏移地址 决定,8086 选择 ds 段寄存器作为默认的段地址

    全栈程序员站长
  • #x64汇编第二讲,复习x86汇编指令格式,学习x64指令格式

    在X86下,查看inter手册可以清楚的看到x86汇编的指令格式. 图标如下

    IBinary
  • 爱了爱了,这篇寄存器讲的有点意思

    下面我们就来介绍一下关于寄存器的相关内容。我们知道,寄存器是 CPU 内部的构造,它主要用于信息的存储。除此之外,CPU 内部还有运算器,负责处理数据;控制器控...

    C语言与CPP编程
  • 16位汇编第第四讲常用的7种寻址方式

    常用的7中寻址方式 昨天稍微讲了一下,立即数寻址,今天继续讲解寻址方式. (注意,这个属于简陋版的,写了4个小时的博客,也就是第一版,保存了一下,但是博客出问题...

    IBinary
  • x64汇编第二讲,复习x86汇编指令格式,学习x64指令格式

    在X86下,查看inter手册可以清楚的看到x86汇编的指令格式. 图标如下

    IBinary
  • JITWatch查看字节码被JIT编译后的汇编代码

    最近看书看到关于volitale关键字与jmm内存模型的介绍,这个知识点似乎看了好多次,背都能背下来了。但理论性的东西真的很容易忘记,看不到摸不着。于是乎,我上...

    Java艺术
  • 8086汇编学习之关于数据段的取值和赋值

    这是根据寄存器容器大小决定的, 容器大装得多, 容器小装的小, 因为ax是16位容器,那么则获取16位也就是两个字节的数据,即1123, 如果是ah或者al接收...

    乱码三千
  • 让DOSBox启动后自动执行命令的方法讲解

    使用DOSBox,可以在win下模拟DOS,自些好玩的工作。例如,学习8086汇编。

    砸漏
  • 未整理的计组复习笔记?

    计组是我听过的最脑阔疼的课。不过已经考过了orz以及,大家学的计组内容可能不一样,这篇复习包括的内容应该是比较简略的。

    gojam
  • 二进制如何变成汇编语言

    之前我们把重点放在硬件 - 组成计算机的物理组件,比如电,电路,寄存器,RAM,ALU,CPU。但在硬件层面编程非常麻烦,所以程序员想要一种更通用的方法编程,一...

    硬核编程

扫码关注云+社区

领取腾讯云代金券