【问题标题】:What does exactly "scan_num" function in "emu8086.inc" do?“emu8086.inc”中的“scan_num”函数究竟是做什么的?
【发布时间】:2011-12-16 19:23:00
【问题描述】:

我正在使用 emu8086,在源代码中我在顶部找到了这一行:

include 'emu8086.inc'

最后这一行:

DEFINE_SCAN_NUM

我知道scan num 是emu8086.inc 的一部分,我用编辑器打开了inc 文件,但还是不知道scan_function 到底是做什么的?

【问题讨论】:

  • this 会帮忙吗?

标签: assembly x86 emulation


【解决方案1】:

它读取一个介于 -32767 和 32767 之间的数字并将其返回到 CX,使用 BIOS 函数进行键盘输入和数字显示。

(实际上,它会在任何位置接受- 符号,而不仅仅是在开头)。

【讨论】:

    【解决方案2】:

    要使用scan_num,我们需要在END之前声明DEFINE_SCAN_NUM。而scan_num 程序帮助我们从键盘获取输入。

    【讨论】:

    • 据此,我假设.inc 文件没有附带一个您必须链接的单独库,但scan_num 太大而不能作为一个在您使用它的任何地方内联的宏.但是他们不能在.inc 中定义一个函数,如果你将它包含在多个文件中,那么你会有冲突的符号定义。所以他们只是定义了一个宏DEFINE_SCAN_NUM,它扩展为一个函数定义,你可以选择把它放在哪里,在你项目的一个文件中。
    猜你喜欢
    • 1970-01-01
    • 2013-12-18
    • 1970-01-01
    • 2013-02-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多