【发布时间】:2015-04-02 07:14:56
【问题描述】:
我正在完成一个我想到的小项目(感谢 Tinkernut),以使用 Assembly 制作一个小型操作系统。我是从头开始制作的,当我完成主要文件时,我想在操作系统中添加一些程序。所以我 制作了一个edit.asm文件(注意:空格是代码的一部分):
; ------------------------------------------------------------------
; RhalexOS Text Editor
; ------------------------------------------------------------------
BITS 16
%INCLUDE 'rhalexdev.inc'
ORG 32768
(其他所有内容都已删除,因为它与手头的问题无关)
但是当我这样做时(我确实安装了 NASM):nasm edit.asm -o edit.bin
我明白了: edit.bin.7:无法打开包含文件“rhalexdev.inc”
我在这里被困了一个小时。请帮帮我。
【问题讨论】:
-
rhalexdev.inc 相对于 edit.asm 的位置在哪里?
-
那条线对我有用。您是否在不支持长文件名的操作系统上进行组装?
-
你试过
%include "rhalexdev.inc"。此外,如果它不在当前目录中,您可以使用-I/path/to/include/dir提供搜索路径,就像使用 C 一样。另请参阅 NASM Docs -- Section2.1.10 -
但这就是重点 - 那里有很多代码可能与您的问题无关。这就是为什么我建议您将其缩减为 最小 示例,但仍会出现问题,然后将其发布。
-
因此,如果您在 Windows 中突出显示 .inc 文件,按 F2、Ctrl-c,然后将其粘贴为要包含在代码中的文件名,您仍然会得到相同的结果吗?而且您没有为 .inc 文件设置任何奇怪的权限?