使用 lc3 应用位掩码
Applying a bit mask using lc3
我目前正在上一门关于装配的课程,运行 遇到了一个问题,即使在网上进行了研究并与教授它的教授交谈之后,我仍然完全不知道如何去做实施它。
简而言之,我想知道如何在值上实现位掩码。例如,如果你想获取一个 16 位值 (1000 0011 1100 0001),并将其转换为这个值 (0000 0000 0111 1111),你将应用这个值 (0000 0000 0111 1111) 的掩码使用我被告知是一个 OR 命令……除了我在课程随附的 lc3 文档中看不到这样的命令。也许它是以不同的方式完成的,但我在旅行中还没有找到概述它的文档。
总而言之,不知道如何使用 lc3 程序集将位掩码应用于值,我没有可用的资源,这里的任何人都比我更了解 material 有任何有用的建议这将如何完成?
编辑:是的,这是作业,但如您所见,我已经用尽了其他选择。
对于任何偶然发现这个问题的人,这就是我解决这个问题的方法,以及如何在 lc3 汇编中执行 OR 指令
;Initialize the variables
.ORIG x3000
LD R0, valueRO
LD R1, valueR1
LD R2, lowOrderZero
;The OR instruction begins now
NOT R3, R0 ;Inverse the value in Register 0 to Register 3
NOT R4, R2 ;Inverse the value in Register 2 to Register 4
AND R5, R3, R4 ;Select either the largest or the closest value and store in R5 (not certain on this one)
NOT R0, R5 ;Inverse the value in Register 5 to Register 0
HALT
valueRO .FILL x0014
valueR1 .FILL x0023
lowOrderZero .FILL x007F
在这个例子中,我使用了 R0 中的值,并将位掩码 0000 0000 0111 1111 应用于 R0 中的值
Special thanks to the Comp Sci instructors at the University of Auckland
我目前正在上一门关于装配的课程,运行 遇到了一个问题,即使在网上进行了研究并与教授它的教授交谈之后,我仍然完全不知道如何去做实施它。
简而言之,我想知道如何在值上实现位掩码。例如,如果你想获取一个 16 位值 (1000 0011 1100 0001),并将其转换为这个值 (0000 0000 0111 1111),你将应用这个值 (0000 0000 0111 1111) 的掩码使用我被告知是一个 OR 命令……除了我在课程随附的 lc3 文档中看不到这样的命令。也许它是以不同的方式完成的,但我在旅行中还没有找到概述它的文档。
总而言之,不知道如何使用 lc3 程序集将位掩码应用于值,我没有可用的资源,这里的任何人都比我更了解 material 有任何有用的建议这将如何完成?
编辑:是的,这是作业,但如您所见,我已经用尽了其他选择。
对于任何偶然发现这个问题的人,这就是我解决这个问题的方法,以及如何在 lc3 汇编中执行 OR 指令
;Initialize the variables
.ORIG x3000
LD R0, valueRO
LD R1, valueR1
LD R2, lowOrderZero
;The OR instruction begins now
NOT R3, R0 ;Inverse the value in Register 0 to Register 3
NOT R4, R2 ;Inverse the value in Register 2 to Register 4
AND R5, R3, R4 ;Select either the largest or the closest value and store in R5 (not certain on this one)
NOT R0, R5 ;Inverse the value in Register 5 to Register 0
HALT
valueRO .FILL x0014
valueR1 .FILL x0023
lowOrderZero .FILL x007F
在这个例子中,我使用了 R0 中的值,并将位掩码 0000 0000 0111 1111 应用于 R0 中的值
Special thanks to the Comp Sci instructors at the University of Auckland