www.ysbm.net > mAsm如何看到调试结果

mAsm如何看到调试结果

看你是那个版本 比较老的是 masm xxx.asm 生成xxx.obj link xxx.obj 生成xxx.exe 如果还清楚 用masm -help 和 link /help 看一下说明

你好!生成可执行文件(masm)后直接在dos下执行,就能看到结果了如果程序只有输出没有输入的话就很难通过调试来确定程序的正确性如果有输入,则可以通过改变输入看结果是否正确来确定程序能否达标当程序很大时,完全正确几乎是不可能的,现在也还没有数学的方法去证明一个程序是正确的希望对你有所帮助,望采纳.

error a2070 :“无效的操作数“cmps改为cmpsb.也可以不带操作数,repne cmpsbesi和edi会自动增长的.repne cmpsb byte ptr ds:[esi],byte ptr es:[edi]应该把ds:[esi]是第一个操作数,es:[edi]做为第2个操作数.

将程序改写为com文件格式,并把数据置于程序的末尾--这样调试最方便 ! CODE SEGMENT ASSUME CS:CODE ORG 100H START: PUSH CS POP DS PUSH CS POP ES LEA SI,DAT0 LEA DI,DAT1 LEA BX,RSLT MOV CX,LENGTH0 XOR

可以用Windbg或VS调试, 如果你编译的时候生成了符号表的话可以像调试c代码那样调试

调试过程: 1. 用文字编辑工具将源程序输入,其扩展名为 .asm . 2. 用masm对源文件进行汇编,产生.obj 文件和.lst 文件. 3. 用type命令显示.lst文件. 4. 用link将.obj文件连接成可执行的.exe文件 5. 在DOS状态下运行LINK所产生的.exe文件

masm32 用 debug.exe ?通常推荐的是 OllyDbg 吧,由于汇编的特性,即便是没有辅助调试信息,调试软件里的直接的指令和源程序基本上也是能直接对上的吧.如果非要用 vc6 那样的,也是可以的,编译是再加上 /Zd /Zi 选项,链接时再加上 /debug 选项,也就可以用 vc6 的来进行源程序级的调试了.

你图上执行是正确的,装载后由于DS没有赋值,D命令显示的DS:0000并不是我们期望的01 02 03,而在你执行了g 10命令后,现在的DS:0000就是我们程序定义的内容了.

是不是没有事先生成可执行文件? 先点击运行->生成可执行文件.然后再点击调试就好.

好像Masm for Windows还没有兼容vista系统的,虽然可以运行,但是会报这样哪样的稀奇古怪的错误,建议你可以将日志文件导出来看看,或者将生成的.EXE文件导出来,直接在后台运行!

网站地图

All rights reserved Powered by www.ysbm.net

copyright ©right 2010-2021。
www.ysbm.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com