返回介绍

附录 E dcc 显示的注解和错误信息

发布于 2025-03-09 23:09:36 字数 3637 浏览 0 评论 0 收藏 0

附录 E

dcc 显示的注解和错误信息

dcc 在输出的 C 语言文件和汇编语言文件中加入一系列注解,是在每一个子程序的分析期间所收集的信息。这个信息在每个子程序前面显示。dcc 支持下列注解:

l "Takes %d bytes of parameters."

参数共计 %d 字节。

l "Uses register arguments:" (and lists the registers and the formal argument name).

使用寄存器参数:(而且列出寄存器和形式参数名字)

l "Takes no parameters."

没有参数。

l "Runtime support routine of the compiler."

编译器的运行时支持例程。

l "High-level language prologue code."

高级语言的序言代码。

l "Untranslatable routine. Assembler provided."

无法翻译的例程。只提供汇编代码。

l "Return value in register %s." (register(s) provided).

在寄存器 %s 中返回数值。(给出寄存器(组))

l "Pascal calling convention."

Pascal语言调用约定。

l "C calling convention."

C语言调用约定。

l "Unknown calling convention."

未知调用约定。

l "Incomplete due to an untranslatable opcode"

由于一个无法翻译的操作码而未完成

l "Incomplete due to an indirect jump"

由于一个间接跳转而未完成

l "Indirect call procedure."

间接调用子过程。

l "Contains self-modifying code."

包含自修改代码。

l "Contains coprocessor instructions."

包含协处理器指令。

l "Irreducible control flow graph."

不可归约的控制流向图。

汇编子程序连同所有的 DOS 内核服务也被加注;中断 20h 到 2Fh。附录 F 含有一个 dcc 支持的所有 DOS 中断列表。

dcc 还显示两种不同的错误类型:致命错误和非致命错误。致命错误终止 dcc 的运行,显示的错误信息足够让使用者了解已发生的事。非致命错误不导致 dcc 终止,作为给使用者的警告。

dcc 支持的致命错误是:

l "Invalid option -%c."

无效选项 -%c

l "Usage: dcc [-a1a2mpsvV][-o asmfile] DOS_executable"

用法:dcc [-a1a2mpsvV][-o asmfile] DOS_executable

l "New EXE format not supported."

新的 EXE格式不被支持。

l "Cannot open file %s."

无法打开文件 %s

l "Error while reading file %s."

在读文件时出错 %s

l "Invalid instruction %02X at location %06lX."

无效指令%02X在%06lX位置上。

l "Don't understand 80386 instruction %02X at location %06lX."

不理解在%06lX位置上的 80386指令%02X

l "Instruction at location %06lX goes beyond loaded image."

在%06lX位置上的指令超出所装入的映像。

l "malloc of %ld bytes failed."

分配%ld字节失败。

l "Failed to find a basic block for jump to %ld in subroutine %s."

没有在子程序%s中发现跳转到%ld的基本块。

l "Basic Block is a synthetic jump."

基本块是一个人工合成的跳转。

l "Failed to find a basic block for interval."

没有发现区间的基本块。

l "Definition not found for condition code usage at opcode %d."

在操作码%d上的条件码使用没有定义。

dcc 支持的非致命错误是:

l "Segment override with no memory operand at location %06lX."

在%06lX位置上段覆盖没有内存操作数。

l "REP prefix without a string instruction at location %06lX."

在%06lX位置上 REP前缀缺少一个字符串指令。

l "Conditional jump use, definition not supported at opcode %d."

条件跳转使用,在操作码 %d 上定义不被支持

l "Definition-use not supported. Definition opcode = %d, use opcode = %d."

定义-使用不被支持。定义操作码 = %d,使用操作码 = %d

l "Failed to construct do..while() condition."

没有构造 do..while() 条件。

l "Failed to construct while() condition."

没有构造 while()条件。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文