gpt4 book ai didi

c - 两遍汇编程序修复

转载 作者:行者123 更新时间:2023-11-30 21:03:47 24 4
gpt4 key购买 nike

我正在开发一个 2 遍汇编程序,并且一直在网上查看示例代码以熟悉自己。我找到了以下代码,但它似乎有问题。你能告诉我有什么问题吗?似乎并没有停止。这是代码

http://www.ccodechamp.com/c-program-of-two-pass-assembler-c-codechamp/

还有一个关于汇编器的一般问题......据我了解,pass是创建默认信息。您能分解一下我需要采取的步骤吗?我想读取文件并检查标签并创建符号表。我知道如何读取文件,但不知道如何检查每个刺痛。

最佳答案

程序无法检测到 END 语句。

首先,input.txt必须有一个END语句,它必须是该行中唯一的3个字符(所以没有前导/尾随空格,并丢弃您在示例输入文件中看到的 // 注释),并且它后面必须跟一个换行符(如果 END 是最后一个)输入中的行,在许多文本编辑器中,这意味着它后面必须有一个空行)。

其次,C 源代码中似乎存在错误;它不承认 fgets 捕获的字符串包含尾随换行符这一事实。在 PASS1PASS2 中都可以找到以下代码行:

while(strcmp(line,"END")!=0)

在这两种情况下,END 后面都应跟有 \n:

while(strcmp(line,"END\n")!=0)

关于c - 两遍汇编程序修复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21187938/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com