Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/assembly/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Assembly 请说明在dosbox中运行asm文件的步骤以及在代码中包含库的相关信息_Assembly_Masm_Irvine32_Masm32_Dosbox - Fatal编程技术网

Assembly 请说明在dosbox中运行asm文件的步骤以及在代码中包含库的相关信息

Assembly 请说明在dosbox中运行asm文件的步骤以及在代码中包含库的相关信息,assembly,masm,irvine32,masm32,dosbox,Assembly,Masm,Irvine32,Masm32,Dosbox,此图显示了我在dosbox中遇到的错误 我正在编写代码,用汇编语言中的递归查找fibonnaci序列的第n项。我在代码中使用call PutDec和call Getdec过程来获取输入和打印响应。当我运行代码时,它显示错误,L2029:PUTDEC,PUTSTR,GETDEC,PUTCRLF unresolved external 请告诉我代码中要添加哪些库,以及包含库的步骤 DOSSEG .186 .大型模型 .堆栈200h .数据 Prompt1 db'输入整数:#$' N-dw? 第n


此图显示了我在dosbox中遇到的错误

我正在编写代码,用汇编语言中的递归查找fibonnaci序列的第n项。我在代码中使用call PutDec和call Getdec过程来获取输入和打印响应。当我运行代码时,它显示错误,L2029:PUTDEC,PUTSTR,GETDEC,PUTCRLF unresolved external

请告诉我代码中要添加哪些库,以及包含库的步骤

DOSSEG
.186  
.大型模型
.堆栈200h
.数据
Prompt1 db'输入整数:#$'
N-dw?
第n个dw?
MsgEcho db“输入为:$”
MsgOut db'斐波那契序列的第n项:$'
MsgEnd db“正在退出程序$”
.代码
外推:远,外推:远
extrn GetDec:FAR,PutDec:FAR
程序启动程序
mov-ax,@data
mov-ds,ax
mov dx,偏移量提示1
莫夫啊,9
int 21h
打电话给GetDec
mov N,ax
mov dx,偏移量MsgEcho
莫夫啊,9
int 21h
莫瓦克斯,N
呼叫PutDec
呼叫PutCrLf
呼叫PutCrLf
推送偏移量
呼叫NFib
mov dx,偏移量MsgOut
莫夫啊,9
int 21h
新墨西哥州莫瓦克斯
呼叫PutDec
这就是我实现半代码的方式,但它显示了错误,如上图所示



这些例程是在哪里定义的?我不知道如何添加它们。但,当我下载了masm32库,并试图添加它,但再次得到错误,因为,无法打开文件。您能告诉我添加的步骤和库文件吗?像masm32.lib这样的32位库在16位DOS上不起作用。您确定使用的是irvine32,而不是irvine16吗?如果是这样的话,那就是问题所在。Irvine32是Windows下的32位模式,而不是DOS下的(AFAIK)16位模式。此外,它还有一些函数名,比如
ReadDec
,而不是
GetDec