Assembly 解释Dhamdhere教科书中玩具ISA的装配清单

Assembly 解释Dhamdhere教科书中玩具ISA的装配清单,assembly,disassembly,mnemonics,Assembly,Disassembly,Mnemonics,考虑以下汇编程序输出列表: START 100 MOVER BREG, ONE 101) + 04 2 105 MOVEM BREG, RESULT 102) + 05 2 106 PRINT RESULT 103) + 10 0 106 STOP

考虑以下汇编程序输出列表:

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) 
  • 代码前的+符号表示什么
  • 为什么给出了
    ONE
    的地址
    001
  • 为什么最后一个
    结果DS 1
    语句后的条目留空
  • 此列表显示在中
    作者:Dhamdhere(编者按:由回答者发现)。

    我不知道您使用的是哪种汇编程序(在您的问题中提供这些信息可能是明智的),因此这些答案并不十分灵通:

  • 不知道-你的汇编手册怎么说
  • 不是,这就是价值所在
  • DS只是保留了一些空间

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

    这似乎是在使用本手册第4章中的简单汇编语言

    在对操作码输出的描述中,它说,“符号不是指令的一部分。”快速阅读文本并没有揭示它是什么的一部分,所有示例在该列中都有“+”

  • “+”符号不是指令的一部分。(数字指令的那一面是机器指令)

  • 一个的地址是105,001是通过使用DC(声明常量的缩写形式)分配给一个的值

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

  • 结果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 )
    
    注:
    它是一种简单的汇编语言,适用于一台假想的计算机,用来说明汇编程序的功能和技术。

    8086是一个CPU,汇编程序是一个软件包。你用的是哪个汇编软件包?我没有用汇编软件包什么,我的意思是,如果这个机器指令集是8086微处理器呢?我从我的课程教科书中写了这段代码。书中提到的机器指令格式是第一个符号2的操作码1的寄存器操作数3的内存操作数对不起,我不明白。你说的是哪本书?在上面的汇编程序中,地址101+处的输出是符号04,是某些指令的操作码(在上面的移动器中)2是我认为的寄存器(可能是B寄存器)105是内存操作数,所以我要问的是,这个符号是用来做什么的,它是机器架构相关的,如果是,它意味着什么不是我的家庭作业,我只是想在初级水平上学习汇编语言,这与你在这里链接的文本相同,只是想知道我在问题中问的3件事。。。。。。谢谢