1.2 debug的六种指令的使用,四个通用寄存器

汇编语言

首先进入环境

mount c d:masm		//把c挂载在d盘中的masm当中
c:		//进入c,进入到编译环境
dir		//查看文件,可有可无
  • Debug是DOS、Windows都提供的实模式(8086 方式)程序的调试工具。使用它可以查看CPU各种寄存器中的内容、内存的情况和在机器码级跟踪程序的运行。

我们用到的Debug功能:
首先输入debug进入debug模式

1. 用Debug的R命令查看、改变CPU寄存器的内容

在这里插入图片描述
这里的数都是16进制表示,相当于右边的值赋值给左边的变量

修改一个寄存器中的值

可以用r命令后加寄存器名来进行
如下:
在这里插入图片描述
这样子ax的值就变成了5678.

2. 用Debug的D命令查看内存中的内容

  • 如果我们想知道内存10000H 处的内容,可以用d 段地址:偏移地址的格式来查看
    如下:
    在这里插入图片描述

  • 如果一直输入d,会发现地址偏移,在汇编中,用两个数来代表一个内存
    在这里插入图片描述

  • 在偏移地址后输入值,可以限制值的展示
    在这里插入图片描述

  • 用d 1000:9查看1000:9处的内容
    在这里插入图片描述
    Debug从1000:9 开始显示,一直到 1000:88 ,一共是128个字节。第一行中的1000:0到1000:8 单元中的内容不显示。

3. 用Debug的E命令改写内存中的内容

e 段内地址:偏移地址 值 值……
在这里插入图片描述

  • 可以输入e 段内地址:偏移地址回车,可以一个个修改值,空格显示下一个修改的值
    在这里插入图片描述

4. 用Debug的U命令将内存中的机器指令翻译成汇编指令

在这里插入图片描述
左边是机器码,右边是翻译过后的代码,代码也是有内存的,用机器码存放到内存当中,u指令就是来翻译这些机器码

5. 用Debug的T命令执行一条机器指令

6. 用Debug的A命令以汇编指令的格式在内存中写入一条机器指令

在这里插入图片描述

  1. 先输入r,查看寄存器的内容,其中cs和ip是寄存器
  2. 写入指令
a 073f:0108
add bx,ax		//将bx与ax的值相加再赋值给bx
mov cx,ax		//将ax的值拷贝一份给cxt		//一个t命令执行一条机器指令t		//一个t命令执行一条机器指令

在这里插入图片描述

7. 记忆方法(true ad)

R:register
D:display
E:edit
U:upgrade ,向上升级以便于翻译成代码
T:execute
A:add

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/709895.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C语言基础18 循环

们可能需要多次执行同一块代码。一般情况下,语句是按顺序执行的:函数中的第一个语句先执行,接着是第二个语句,依此类推。 编程语言提供了更为复杂执行路径的多种控制结构。 循环语句允许我们多次执行一个语句或语句组&#xff0…

为什么模型需要激活函数?

模型需要激活函数的原因主要是为了增加神经网络模型的非线性能力。没有激活函数,不论神经网络有多少层,它本质上还是一个线性回归模型,这意味着它只能学习输入和输出之间的线性关系。激活函数通过引入非线性因素,使得神经网络能够…

leetcode刷题(剑指offer) 46.全排列

46.全排列 给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 。你可以 按任意顺序 返回答案。 示例 1: 输入:nums [1,2,3] 输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]示例 2: 输入&#…

计算机组成原理

计算机组成原理是计算机科学中的一门重要课程,主要研究计算机硬件系统的基本组成和工作原理。以下是一份关于计算机组成原理的3000字概述,由于篇幅限制,我将提供一个摘要版本。若需要更详细的内容,请随时告知。 一、引言 计算机&…

信息安全技术基础

本博客地址:https://security.blog.csdn.net/article/details/136331705 一、信息安全基础 1、信息安全的基本要素有机密性、完整性、可用性、可控性与可审查性。信息安全的范围包括设备安全、数据安全、内容安全和行为安全。其中数据安全即采取措施确保数据免受未…

OpenAI Triton 入门教程

文章目录 Triton 简介背景Triton 与 CUDA 的关系 Triton 开发样例样例一:Triton vector addition 算子Triton kernel 实现kernel 函数封装函数调用性能测试 样例二:融合 Softmax 算子动机Triton kernel 实现kernel 封装单元测试性能测试 样例三&#xff…

苍穹外卖Day03——解决总结3中存在的问题

解决Day03中存在的问题 1. ResponseBody 与 RequestBody2. RequestParam 与 PathVariable3. 字段填充技术(注解、AOP、反射)3.1. AOP3.2. 注解3.3. 反射3.5 字段填充在项目应用 4. 阿里云云存储OOS 1. ResponseBody 与 RequestBody ResponseBody&…

面试经典150题——矩阵置零

​"Dream it. Wish it. Do it." - Unknown 1. 题目描述 2. 题目分析与解析 2.1 思路一——暴力求解 思路一很简单,就是尝试遍历矩阵的所有元素,如果发现值等于0,就把当前行与当前列的值分别置为0。同时我们需要注意,…

【Java】基本数据类型、包装类与字符串间的转换 例题

写在前面: 关于这道题,初见感觉有点cpu烧坏了,准确来说是看了网上的一些讲解都感觉不尽人意。自己整理了一下,希望能帮助到大家。 题目: 如下两个题目输出结果相同吗?各是什么。 Object o1 true ? new…

双非二本找实习前的准备day3

学习目标: 每天2-3到简单sql(刷完即止),每天复习代码随想录上的题目3道算法(时间充足可以继续),背诵的八股的问题也在这里记录了 今日碎碎念: 1)偶尔还是贪玩游戏&…

java演唱会网上订票购票系统springboot+vue

随着计算机技术的发展以及计算机网络的逐渐普及,互联网成为人们查找信息的重要场所,二十一世纪是信息的时代,所以信息的交换和信息流通显得特别重要。因此,开发合适的基于springboot的演唱会购票系统的设计与实现成为企业必然要走…

基于uniapp开发小程序,代码上线发布教程【抖音、微信】

本系列文章适合三类同学:1.希望学习小程序开发;2.希望无代码、低代码拥有自己的小程序;3.快速搭建小程序交作业、交毕设的大学生 本系列文章将推出配套桌面端软件,配合软件,可实现傻瓜式开发小程序,请有需求…

@Slf4j 变量log找不到符号,可能是 Gradle 配置文件写得有问题

Slf4j 变量log找不到符号 鄙人在学习 Java 的 spring boot 项目时, 常常因为 maven 配置文件使用 xml 格式过于复杂, 所以更倾向于使用 gradle 作为构建工具. 然而, 在使用 gradle 作为构建工具时, 又需要引用 Lombok 依赖. 有时忘记在初始化项目时添加上 Lombok 依赖, 所以经…

网络扫描之Nmap

一、主机发现 1. 全面扫描/综合扫描 nmap -A 192.168.100.1002. Ping扫描 nmap -sP 192.168.1.1/243. 免Ping扫描,穿透防火墙,避免被防火墙发现 nmap -P0 192.168.100.1004. TCP SYN Ping 扫描 nmap -PS -v 192.168.100.100 nmap -PS80,10-100 -v 192.1…

C++ deque详解以及容器适配器

目录 1.容器适配器 2.deque的使用 2.1deque的介绍 2.2deque的缺陷 2.3deque作为stack和queue的可行性 2.4 deque类的使用 2.4.1deque的构造函数 2.4.2deque容量操作 2.4.3deque赋值,插入 1.容器适配器 适配器是一种设计模式(设计模式是一套被人…

idea创建一个简单的maven项目

个人学习笔记(整理不易,有帮助点个赞) 笔记目录:学习笔记目录_pytest和unittest、airtest_weixin_42717928的博客-CSDN博客 添加-DarchetypeCataloginternal 运行参数 (ps:不填的话,maven 骨架生成速度缓慢) 其实我没…

Redis---持久化

Redis是内存数据库,是把数据存储在内存中的,但是内存中的数据不是持久的,如果想要做到持久,那么就需要让redis将数据存储到硬盘上。 Redis持久化有两种策略: RDB > Redis DataBase RDB机制采取的是定期备份AOF …

Java的编程之旅31——多态

1.多态的简介 在Java中,多态是指通过父类的引用调用子类的对象,实现不同类型的对象的方法调用。 Java中的多态通过继承和重写实现。当子类继承父类并重写父类的方法时,可以通过父类的引用调用子类的对象,并且根据运行时实际的类型…

Spring多事务管理器报错处理

报错如下 Description:Field defaultUidGenerator in len.hgy.wsearch.interfaces.search.api.CityController required a single bean, but 2 were found:- transactionManager: defined by method transactionManager in class path resource [org/springframework/boot/aut…

c# ABB 机械手上位机连接

c# 程式开发和调试步骤如下: ABB 机械手要开启PC Interface功能。ABB 机械手设定ip地址。设定测试笔记本和机械手同一网段,用网线直连机械手,也可以通过交换机连接机械手。确保笔记本能够ping通和telnet 机械手80端口都是OK的。以上都OK的话…