汇编语言debug的使用方法

简介:
进入Windows操作系统,输入cmd回车
输入debug 回车,这样就进入了 debug模式
1: 输入 -r 查看或者修改寄存器,可以修改CS IP来指向要执行汇编的内存地址
   -r 回车 查看
   -r ax 回车 修改 ax的值
   -r cs 回车  修改 cs的值
   -r ip 回车 修改 ip的值
 
2: 输入-D 查看内存中的信息
   -d 1000:0000 查看段地址为1000H ,偏移地址为0开始的内存信息
   -d 1000:0000 00ff 就是查看 1000:0000 到1000:00ff的内存信息
   查看主板生产日期
  -d fff0:0000 00ff 可以看到右下角的 08/14/08 格式月/日/年, 08年8月14号生产的主板
    这里的生产日期是只读的,无法修改,通过-e修改表面上看是改过了,下次打开后又恢复之前数据了
    如果直接用 -d 0100 则会显示 DS:0100处的内存信息,也就是显示段地址为ds,便宜地址为0100的内存信息。
    -d ds:0100  也可以这么使用
3:输入-E修改内存中位置的信息
   -e 1000:0000 1a 00 09 10 a1 61 这样就可以修改对应段地址为1000H ,偏移地址为0开始的内存信息
   -e 1000:0000 'a+b' 这样就会在内存1000:0000处写入61H(a的ASICC码) 1000:0001处+ 1000:0002 62


4:输入-u查看指定位置对应的汇编指令
   -u 1000:0000 查看该处的汇编指令
   -u cs:0000 查看段地址为cs处的汇编指令
5: 输入-t 执行指令
   -t 执行CS:IP所指向的第一个指令,如果要执行自己写入内存的指令,应该先通过-r来改变CS IP的值,然后再执行 -t 执行
   -t 指令默认执行第一条指令后停止。但是当遇到修改SS的指令时,会把紧接的下一条指令也执行了。
6:输入-a 输入汇编指令
   -a 1000:0000 回车
这样就可以直接在1000:0000处输入汇编指令了,注意再输入完之后,输入一个空格,表示输入完毕,输入完毕后,通过-r修改CS ip来指向对应的内存地址,然后就可以通过-t逐行执行了,每执行一次通过-r来看对应的寄存器的变化。
  -a 回车 直接输入汇编指令,默认会在cs:ip处输入,所以直接用-a 回车输入汇编指令,然后用-t执行那么执行的就是刚刚输入的汇编指令,这样可以用来调试汇编指令
 
7:输入-g 直接跳转到哪步执行
   用-t是需要一步一步执行,但是往往遇到loop循环时候,次数很多,必须要用-g跳到指定行执行
   -g 0019 直接跳到便宜地址为0019h处执行
 
 
 最后用DEBUG加载.exe文件
  用RadASM编写好asm文件(新建选择masm编译器,dos)编写好后用编译、链接、运行,此时生成了对应的exe文件。比如在:D:\RadASM\Masm\Projects\test\test.exe
  再用命令 debug D:\RadASM\Masm\Projects\test\test.exe 回车
  -u 查看对应test.exe里的汇编指令 -t执行 -g 跳转到哪个偏移地址执行
相关文章
|
SQL 大数据 关系型数据库
大数据面试:面试官要求我了解过Presto——Presto到底是个什么东西
大数据面试:面试官要求我了解过Presto——Presto到底是个什么东西
491 0
人工智能 运维 Cloud Native
539 6
|
5月前
|
消息中间件 存储 监控
【Kafka核心】三大核心模块:消费者组、重平衡Rebalance、offset提交
本文系统梳理Kafka消费端三大核心:消费者组(架构载体与扩展基础)、重平衡(动态调度与容灾机制)、offset提交(进度持久化与语义保障),深入解析其原理、流程、强耦合关系及生产级优化方案,覆盖从入门到落地的全链路实践。
|
前端开发 JavaScript 算法
React:构建用户界面的声明式力量
React:构建用户界面的声明式力量
|
消息中间件 搜索推荐 调度
RocketMQ实战—8.营销系统业务和方案介绍
本文详细介绍了电商营销系统的业务流程、技术架构及挑战解决方案。涵盖核心交易与支付后履约流程,优惠券和促销活动的发券、领券、用券、销券机制,以及会员与推送的数据库设计。技术架构基于Nacos服务注册中心、Dubbo RPC框架、RocketMQ消息中间件和XXLJob分布式调度工具,实现系统间高效通信与任务管理。针对千万级用户量下的推送和发券场景,提出异步化、分片处理与惰性发券等优化方案,解决高并发压力。同时,通过RocketMQ实现系统解耦,提升扩展性,并利用XXLJob完成爆款商品推荐的分布式调度推送。整体设计确保系统在大规模用户场景下的性能与稳定性。
RocketMQ实战—8.营销系统业务和方案介绍
|
人工智能 自然语言处理 搜索推荐
对话批改邦 | 从0到30万用户,如何抓住AI教育增长机遇
阿里云【AI访谈录】本期邀请AI创业者、批改邦创始人王庆棒,分享其团队如何通过AI技术打造教育场景下的教学助手。批改邦以作文批改切入教育行业,上线一年用户突破30万,付费转化率超30%。王庆棒围绕AI如何标准化主观评价、大模型在教育中的落地趋势、未来“杀手级AI应用”的形态等话题,分享一线实战经验。
1180 0
|
存储 消息中间件 分布式计算
Hologres实时数仓在B站游戏的建设与实践
本文介绍了B站游戏业务中实时数据仓库的构建与优化过程。为满足日益增长的数据实时性需求,采用了Hologres作为核心组件优化传统Lambda架构,实现了存储层面的流批一体化及离线-实时数据的无缝衔接。文章详细描述了架构选型、分层设计(ODS、DWD、DIM、ADS)及关键技术挑战的解决方法,如高QPS点查、数据乱序重写等。目前,该实时数仓已广泛应用于运营分析、广告投放等多个场景,并计划进一步完善实时指标体系、扩展明细层应用及研发数据实时解析能力。
Hologres实时数仓在B站游戏的建设与实践
|
Linux
Red Hat下载ISO镜像的方法
Red Hat 是一家全球领先的开源技术解决方案提供商,总部位于美国北卡罗来纳州罗利。该公司成立于1993年,其主要产品是 Red Hat Enterprise Linux (RHEL) 操作系统。Red Hat 还提供其他产品和解决方案,如 OpenShift、Virtualization、Ansible 等,用于企业级应用的开发、部署和管理。Red Hat 的产品和服务广泛应用于各个行业的企业,其开源背景和社区合作模式使其成为许多企业的首选技术合作伙伴。
4002 1
快手同城用户点赞关注脚本,快手评论区精准性别年龄点赞收藏插件,按键精灵智能稳定版
这是一套针对快手平台的自动化营销工具源码,利用其较低的风控限制,通过脚本实现私信、点赞等功能,提升营销效率。支持自定义点赞次数与话术
|
Ubuntu
Ubuntu下载ISO镜像的方法
步骤 1:访问Ubuntu官方网站 打开浏览器,输入Ubuntu的官方网址:https://cn.ubuntu.com/download/desktop 接着,点击“Ubuntu Desktop”或你需要的Ubuntu版本。
15347 6