解释 Dhamdhere 教科书中玩具 ISA 的汇编列表

发布于 2024-07-16 12:49:57 字数 948 浏览 6 评论 0原文

考虑以下汇编器输出列表:

START 100
MOVER BREG, ONE                                101) + 04 2 105 
MOVEM BREG, RESULT                             102) + 05 2 106
PRINT RESULT                                   103) + 10 0 106
STOP                                           104) + 00 0 000
ONE DC '1'                                     105) + 00 0 001
RESULT DS 1                                    106) 
  1. 代码前面的 + 符号表示什么?
  2. 为什么ONE的地址是001
  3. 为什么最后一个 RESULT DS 1 语句后面的条目留空?

此列表显示在 系统编程和操作系统< /a> 作者:Dhamdhere(编者注:由回答者发现)。

Consider the following assembler output listing:

START 100
MOVER BREG, ONE                                101) + 04 2 105 
MOVEM BREG, RESULT                             102) + 05 2 106
PRINT RESULT                                   103) + 10 0 106
STOP                                           104) + 00 0 000
ONE DC '1'                                     105) + 00 0 001
RESULT DS 1                                    106) 
  1. What does the + sign before code signifies?
  2. Why is the address of ONE given 001?
  3. Why is the entry after the last RESULT DS 1 statement left blank?

This listing appears in Systems Programming and Operating Systems
by Dhamdhere (editor's note: as discovered by an answerer).

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

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

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

静若繁花 2024-07-23 12:49:57

我不知道您正在使用哪个汇编器(在您的问题中提供该信息可能是明智的),因此这些并不是特别消息灵通的答案:

  1. 不知道 - 您的汇编器手册怎么说它
  2. 不是 -这就是值
  3. DS 只是保留一些空间

编辑: 汇编程序是一种计算机程序,它获取包含汇编语言的文本并将其转换为机器代码。 它还可以以人类可读的形式生成输出,这就是您发布的代码的样子。 人类可读形式的格式特定于您正在使用的特定汇编器(即程序) - 它并不特定于汇编器为其发出机器代码的机器体系结构。

I don't know which assembler you are using (it might have beem sensible to give that information in your question) so these are not particularly well-informed answers:

  1. Don't know - what does your assembler's manual say
  2. It isn't - that's the value
  3. DS just reserves some space

Edit: An assembler is a computer program that takes text containing assembly language and turns it into machine code. It can also produce output in human readble form, which is what the code you posted appears to be. The format of the human readble form is specific to the particular assembler (i.e. program) that you are using - it is not specific to the machine architecture the assembler emits machine code for.

梦情居士 2024-07-23 12:49:57

这似乎使用了 系统程序和操作

在操作码输出的描述中,它说:“符号不是指令的一部分。” 快速浏览文本并没有揭示它的组成部分,并且所有示例在该栏中都有“+”。

This appears to be using the simple assembly language in Chapter 4 of Systems Program and Operation.

In the description of the opcode output, it says, "The sign is not a part of the instruction." A quick perusal of the text didn't reveal what it is part of, and all of the examples have "+" in that column.

许仙没带伞 2024-07-23 12:49:57
  1. “+”号不是指令的一部分。 (数字指令那边是机器指令)

  2. ONE 的地址是 105,001 是使用 DC 分配给 ONE 的值,DC 是声明常量的缩写形式。

    DC保留内存字空间并分配常量。

  3. RESULT DS 1 的条目留空,因为 DS 保留了给定要求的内存空间,这里只给出了 1,因此它只保留了一个内存字位置。

仅数字部分的另一侧是机器指令,它遵循以下格式

Sign opcode register_opcode memory_operand

例如,

101) memory location
+ Sign (not part of instruction)
04 Machine opcode ( occupy 2 digits )
2 Register operand ( occupy 1 digit )
105 Memory operand ( occupy 3 digits )

注意:
它是用于假设计算机的简单汇编语言,用于说明汇编器的功能和技术。

  1. "+" Sign is not part of the instruction. ( That side of numeric instructions are machine instruction )

  2. Address of ONE is 105 and 001 is value assigned to ONE by using DC which is short form of declare constant.

    DC reserve memory word space and assign the constant.

  3. The entry of RESULT DS 1 left blank because DS reserves memory space of given requirement here only 1 is given so it only reserves one memory word location.

Other side of only numeric part is machine instruction it follows below format

Sign opcode register_opcode memory_operand

For example,

101) memory location
+ Sign (not part of instruction)
04 Machine opcode ( occupy 2 digits )
2 Register operand ( occupy 1 digit )
105 Memory operand ( occupy 3 digits )

Note :
It's simple assembly language for a hypothetical computer which is used to illustrate features and techniques of assemblers.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文