2017-03-06 39 views
0

我只是试图弄清楚如何使用getdec获得一个int,并且一直对我没有任何帮助,所以我一直把头撞到墙上2个小时。本书仅用于给出getdec的定义及其输入和输出,但没有关于如何使用它的示例。不能在我的生活中使用GETDEC

我必须通过使用get dec并将它们推入堆栈,从用户那里获得几个int。我知道getdec应该接受输入并存储在AX中。我也不允许使用任何点操作。

我使用ML /Fl p3.asm /link io.lib pause制作文件,所以我知道包含lib.io。

到目前为止,香港专业教育学院只得到了这一点:

`DOSSEG` 

    DATA SEGMENT 
    NAM  BYTE 'xxxxx xxxxxxxxxx' ;LEN 19-CHANGE NAME AND LEN 
    HEADER BYTE 'Enter a number' 
    ZEROS WORD 0000 
    DATA ENDS 
    CODE SEGMENT 'CODE' 
    ASSUME CS:CODE, SS:NOTHING, DS:DATA, ES:NOTHING 
    P3: MOV AX,SEG DATA 
    MOV DS,AX 
    call GETDEC 
    PUSH AX 
;rest of code goes here 


    CODE ENDS 
    END P3 

林好上使用堆栈和哮喘,但我只是用斜面得到getdec输入。

+0

你知道'GETDEC'不是什么普通的东西,没有指定你正在使用的书,我们不知道你在说什么?它不是“x86汇编”的一部分,而是本书作者编写的代码。在链接中,通过将“io.lib”链接到代码来添加外部代码,因此您必须使用汇编程序指令将不同模块之间的这些外部符号互连。也不要花太多时间来记忆这些外部功能,因为它们只与本书有关,只关注说明和原则,这些说明和原则也适用于其他地方的一些修改。 – Ped7g

回答

0

我找到了!如果其他人遇到问题,您必须在程序开始时包含EXTERN GETDEC:FAR