nas汇编程序的调试排错方法:
1、查找是哪一步错了
2、查看对应的*.lst文件,本例中是"asmhead.lst"
3、根据*.lst文件的[ERROR #002]提示查看源码,改错。
4、重新运行编译,OK
1、查找是哪一步错了:
nask.exe编译汇编程序时出错了
//----------------------------
//运行boyI报错:
E:\techdoc\30dayOS\code\day03\boyI>..\..\tolset\z_tools\make.exe
make.exe -r img
make.exe[1]: Entering directory `E:/techdoc/30dayOS/code/day03/boyI'
make.exe -r haribote.img
make.exe[2]: Entering directory `E:/techdoc/30dayOS/code/day03/boyI'
nask.exe ipl10.nas ipl10.bin ipl10.lst
nask.exe asmhead.nas asmhead.bin asmhead.lst
NASK : 1 errors.
make.exe[2]: *** [asmhead.bin] Error 1
make.exe[2]: Leaving directory `E:/techdoc/30dayOS/code/day03/boyI'
make.exe[1]: *** [img] Error 2
make.exe[1]: Leaving directory `E:/techdoc/30dayOS/code/day03/boyI'
..\..\tolset\z_tools\make.exe: *** [default] Error 2
E:\techdoc\30dayOS\code\day03\boyI>
2、查看对应的"asmhead.lst"文件:
在文件中根据关键字"[ERROR"查找就可以了。
E:\techdoc\30dayOS\code\day03\boyI\asmhead.lst
23 0000C20B C7 06 0FF4 0140 MOV WORD [SCRNX],320
24 0000C211 MOV WROD [SCRNY],200
>> [ERROR #002] parameter error.
25 0000C211 66 C7 06 0FF8 000A0000 MOV DWORD [VRAM],0x000a0000
26 0000C21A ;用BIOS取键盘上各种指示灯的状态
27 0000C21A B4 02 MOV AH,0x02
3、根据"asmhead.lst"文件的[ERROR]提示查看源码
24 0000C211 MOV WROD [SCRNY],200
>> [ERROR #002] parameter error.
查看"asmhead.nas"汇编程序源码:
MOV WROD [SCRNY],200
错误原因:
WORD写成了WROD
修改为:
MOV WORD [SCRNY],200
4、重新运行编译,OK
E:\techdoc\30dayOS\code\tolset\day03_boyI>make
E:\techdoc\30dayOS\code\tolset\day03_boyI>..\z_tools\make.exe
../z_tools/make.exe -r img
make.exe[1]: Entering directory `E:/techdoc/30dayOS/code/tolset/day03_boyI'
../z_tools/make.exe -r haribote.img
make.exe[2]: Entering directory `E:/techdoc/30dayOS/code/tolset/day03_boyI'
../z_tools/nask.exe ipl10.nas ipl10.bin ipl10.lst
../z_tools/nask.exe asmhead.nas asmhead.bin asmhead.lst
../z_tools/cc1.exe -I../z_tools/haribote/ -Os -Wall -quiet -o bootpack.gas bootpack.c
../z_tools/gas2nask.exe -a bootpack.gas bootpack.nas
../z_tools/nask.exe bootpack.nas bootpack.obj bootpack.lst
../z_tools/obj2bim.exe @../z_tools/haribote/haribote.rul out:bootpack.bim stack:3136k map:bootpack.map \
bootpack.obj
../z_tools/bim2hrb.exe bootpack.bim bootpack.hrb 0
copy /B asmhead.bin+bootpack.hrb haribote.sys
asmhead.bin
bootpack.hrb
已复制 1 个文件。
../z_tools/edimg.exe imgin:../z_tools/fdimg0at.tek \
wbinimg src:ipl10.bin len:512 from:0 to:0 \
copy from:haribote.sys to:@: \
imgout:haribote.img
make.exe[2]: Leaving directory `E:/techdoc/30dayOS/code/tolset/day03_boyI'
make.exe[1]: Leaving directory `E:/techdoc/30dayOS/code/tolset/day03_boyI'
E:\techdoc\30dayOS\code\tolset\day03_boyI>
文章来源:https://www.toymoban.com/news/detail-702684.html
(全文完)文章来源地址https://www.toymoban.com/news/detail-702684.html
到了这里,关于nas汇编程序的调试排错方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!