在电脑中执行一条指令主要又三个步骤:

(1)在指定地址上写入一条汇编指令
(2)使cs寄存器与ip寄存器指向指令所在的地址
(3)开始执行

(1)在指定地址写入一条汇编指令:
终端上常用的命令有:R命令:查看寄存器内容:直接输入r  //例: r修改寄存器内容:r + 寄存器名称//例:r ax  ------> 修改ax寄存器中的数据,回车后输入内容D命令:查看当前内存中的内容:直接输入d       然后回车查看指定内存的内容:d + 指定地址      然后回车//例:d 1000:0 ---->查看段地址1000H,偏移地址0000H内存的内容E命令:改写当前内存中的内容: e 回车输入内容改写指定内存的内容:e + 指定地址//例:e 1000:0   --->修改段地址1000H,偏移地址0000H内存的内容U命令:将当前内存中的机器指令翻译成汇编指令:u将指定内存中的机器指令翻译成会汇编指令:u + 指定地址例:u 1000:0 --->把1000:0地址上的机器指令翻译成汇编指令A命令:在当前内存以汇编指令格式写入一条机器指令:a 回车输入汇编指令在指定内存中写入一条汇编指令:a + 指定地址//例: a 1000:0  --->在内存地址为1000:0中写入一条汇编指令T命令:根据cs和ip的地址执行一条指令

这里主要使用A命令,A命令的作用是以汇编指令的格式在内存中写入一条机器指令:

a 1000:0 //在段地址1000H偏移地址为0000H的地址上写入一条汇编指令

当我们输入命令后回车就会出现我们刚刚指定的地址,然后我们可以输入汇编指令了,我这里输入mov ax,1000;连续回车两下退出输入,不然会一直在下一个地址的输入界面;此时我们可以输入命令查看ax寄存器的值:

(1)修改CS(Code Segment)与IP(Instruction Pointer)的值:

其中CS为:代码段寄存器,执行汇编指令时CPU会从CS寄存器中读取代码所在的段地址
IP为:指令指针寄存器,执行汇编指令时,CPU会从IP寄存器中读取代码>所在段地址的偏移地址

注:执行命令时会把CS的段地址和IP的偏移地址来获得指令真正所在的地址

我们是通过r命令来修改CS寄存器和IP寄存器中的值;

修改CS寄存器的段地址和IP寄存器的偏移地址值:r cs 然后回车输入我们刚刚存放指令的段地址r ip 然后回车输入
(指令在1000:0地址,其中1000为段地址,冒号后的0为偏移地址)

(3)开始执行汇编指令

上面步骤都完成以后我们就可以开始执行我们刚刚写的指令了:
直接输入t后CPU就会自动从cs和ip寄存器中读取我们的汇编指令去执行了

注:在汇编中是不区分大小写的,因此大写和小写是可以一起使用的

如若有什么错误的地方麻烦提示一下,非常感谢

如何执行一条汇编指令相关推荐

  1. MIPS指令集处理器设计(支持64条汇编指令)

    一.题目背景和意义 二.国内外研究现状 (略) 三.MIPS指令集处理器设计与实现 (一).MIPS指令集功能性梳理 1.MIPS指令集架构 (1).mips基础指令集格式总结 MIPS是(Micro ...

  2. 一条汇编指令是如何在计算机的硬件中进行执行的

    本文说明的是单纯的一般的计算指令从储存设备中取出来之后,运行时(取址,译码,执行,回写 -- 这些操作)在CPU和我们的主存之间的执行过程 以下,我们使用一条简单的指令进行引入,后续再添加其他的情况: ...

  3. C51最全111条汇编指令合集,以及使用时的注意事项,超详细

    direct 以地址来命名的变量 所有的变量都需要放到一个存储单元中,这个存储单元都一定有一个地址 特别注意!!!!!寄存器的名字单独写出就代表了把该寄存器中的数据,即它就代表其里面的内容,而不是他的 ...

  4. php exec执行多条命令,小技巧:在PHP中调用多条shell指令

    原标题:小技巧:在PHP中调用多条shell指令 有时候,在持续集成的过程中,需要通过网页在目标服务器上执行shell指令,今天就列举一个实例进行讲解. 比如,我们需要能通过网页将SVN update ...

  5. go语言调度器源代码情景分析之五:汇编指令

    本文是<go调度器源代码情景分析>系列 第一章 预备知识的第4小节. 汇编语言是每位后端程序员都应该掌握的一门语言,因为学会了汇编语言,不管是对我们调试程序还是研究与理解计算机底层的一些运 ...

  6. 汇编指令:使用汇编指令计算2的8次方

    预备知识 使用汇编语言经典教材 王爽老师的<汇编语言第三版> 对汇编语言进行学习. 在装完DosBox环境之后,就可以用debug模式进行汇编指令的编程了. 下面我们看下在debug模式下 ...

  7. ida pro 反汇编 Android so 库后修改 arm 汇编指令的方法总结

    1 前言 最近博主在学习Android逆向的时候,参照吾爱破解论坛的<教我兄弟学Android逆向系列课程>学习的时候,学到第8章<教我兄弟学Android逆向08 IDA爆破签名验 ...

  8. arm学习之基本汇编指令

    文章目录 1. 汇编文件中的主要符号 1.1 汇编指令 1.2 伪指令 1.3 伪操作 2. 汇编指令的分类 3. 基本汇编指令语法格式 4. 数据操作指令 4.1 数据搬移指令 4.1.1 指令格式 ...

  9. 内存地址、机器码与汇编指令的三角恋关系

    虽然机器码和内存地址领证在一起了,但是俩个人都和汇编指令有着说不清的关系,机器码的前任是汇编指令,而汇编指令又与内存地址暗地相通,这究竟是道德的沦丧还是人性的扭曲,今天就让我来领大家细细分解这三者的前 ...

最新文章

  1. 翻转矩阵(数组右移问题)
  2. 【FFmpeg】如何通过url的格式找到对应的协议,以rtmp为例
  3. android.graphic.Path
  4. VIM 使用技巧(常用提取)
  5. HTML5缓存和GPS定位
  6. python 错误AttributeError: ‘dict_keys‘ object has no attribute ‘sort‘
  7. Android 功耗优化(4)---android 7.0低电耗Doze模式
  8. 拥有中国最深基坑的超高层建筑完成地下连续墙施工
  9. [JAVA网络编程]用Socket与网络调试助手(NetAssist)进行TCP通讯过程中遇到的问题
  10. 系统架构设计-计算机组成与体系结构
  11. 计算机的音标英语,英语国际音标
  12. HTML短信验证码框,vue实现短信验证码输入框
  13. java包装类string_Java学习之String类与包装类
  14. python让手机关机_Python 神操作:远程开机和关机
  15. 判断ip归属地 c++
  16. FPGA自学11——以太网通信
  17. switch中break用法
  18. (附源码)springboot停车场车辆定位管理可视化分析系统的设计与实现 毕业设计101702
  19. 【自然语言处理】【细粒度情感分析】细粒度情感分析:了解文本情感的What、How、Why
  20. NFT Insider #63:The Sandbox与时代杂志达成合作,YGG成立西班牙subDAO

热门文章

  1. 自学Vue时我曾经出过错的地方(一)
  2. 云呐|医疗医院资产管理软件,医疗设备资产管理系统
  3. 中冠百年|家庭长期理财的四个方法
  4. .replaceAll is not a function nodejs14不可用 replaceAll
  5. 【uniapp】视频分享预览小程序
  6. C++11之atomic原子操作
  7. baklib-在线文档创作、托管的一体化电子出版平台
  8. 太赞了!实战讲述Flutter跨平台框架应用,挥泪整理面经
  9. 字符指针?指针数组?数组指针?《C语言指针进阶第一重奏》
  10. 小知识分享:adb uiautomator 命令 dump ui 树信息