计算机组成原理——学习使用debug

本文介绍Debug作为调试汇编语言程序的工具,在程序开发过程中的作用。通过一段具体的代码示例,展示Debug如何帮助开发者查找并修复错误。在复杂的程序开发中,Debug能够有效地定位和解决程序中的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我们在编写程序的过程中特别是比较复杂的程序难免会有出错所以调试程序Debug就是用来调试汇编语言程序的一种工具。所以debug可以帮我们检验出差错,今天我们就用一段代码来检验debug的用处。

Code SEGMENT
      ASSUME CS:code,DS:code
      ORG 100H            ;从100H处开始存放下列指令
Start:MOV AX,code         ;将DS置成code段的首地址
      MOV DS,AX
      MOV SI,200H         ;取第一个数的首地址
      MOV AX,[SI]         ;将第一个数的低16位取到AX
      MOV DI,204H         ;取第二个数的首地址
      ADD AX,[DI]         ;第一个数和第二个数的低16应相加
      MOV [SI+8],AX       ;低16位相加的结果送到208H和209H单元
      MOV AX,[SI+2]       ;取第一个数的高16位送到AX中
      ADD AX,[DI+2]       ;两个数的高16位相加
      MOV [SI+0AH],AX     ;高16位相加的结果送到20AH,20BH单元
      MOV AX,4C00H        ;使用DOS的4CH号功能调用
      INT 21H             ;进入功能调用,返回DOS
      ORG 200H            ;从200H处开始存放下列数据
      DD 12345678h,654387A9h,0h ;被加数、加数、和
Code ENDS
    END start

当输入-r时候  首先用T命令顺序执行用户程序的前l两条指令,将段寄存器DS预置为用户的数据段。

对代码使用u命令反汇编





查看结果发现程序有问题





所以在编译过程中debug可以起到查询错误的功能 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值