计算机系统(1)(荣誉)作业二

简介: 计算机系统(1)(荣誉)作业二

将以下子程序翻译成 LC3 代码,并写出主调函数的 LC3 代码

int add_threshold(int a, int b, int threshold)
{
  int c = a + b;
  if (c >= threshold)
    return 1;
  else
    return 0;
}

参考答案

主调函数

LDR R0,R5,#-1;
ADD R6,R6,#-1;
STR R0,R6,#0;
LDR R0,R5,#-2;
ADD R6,R6,#-1;
STR R0,R6,#0;
LDR R0,R5,#-2;
ADD R6,R6,#-1;
STR R0,R6,#0;
JSR addthreshold;
LDR R0,R6,#0;
STR R0,R5,#0;
ADD R6,R6,#1;
ADD R6,R6,#3;

子程序

addthreshold
ADD R6,R6,#-1;
ADD R6,R6,#-1;
STR R7,R6,#0;
ADD R6,R6,#-1;
STR R5,R6,#0;
ADD R5,R6,#-1;
ADD R6,R6,#-1; 
// int c = a + b;
AND R0,R0,#0;
LDR R1,R5,#4;
LDR R2,R5,#5;
ADD R0,R1,R2;
STR R0,R5,#0;
//if判断
LDR R0,R5,#0;
NOT R0,R0;
ADD R0,R0,#1;
LDR R1,R0,#6;
ADD R1,R1,R2;
BRn Else;
AND R0,R0,#0;
ADD R0,R0,#1;
STR R0,R5,#3;
BR Return;
Else
AND R0,R0,#0;
STR R0,R5,#3;
Return
ADD R6,R5,#1;
LDR R5,R6,#0;
ADD R6,R6,#1;
LDR R7,R6,#0;
ADD R6,R6,#1;
RET
相关文章
|
1月前
|
监控 JavaScript 前端开发
【软件设计师备考 专题 】计算机系统性能评测方式(二)
【软件设计师备考 专题 】计算机系统性能评测方式
38 0
|
1月前
|
搜索推荐 测试技术 Apache
【软件设计师备考 专题 】计算机系统性能评测方式(一)
【软件设计师备考 专题 】计算机系统性能评测方式
39 0
408王道计算机组成原理强化——输入输出系统大题(I/O)
408王道计算机组成原理强化——输入输出系统大题(I/O)
272 1
408王道计算机组成原理强化——输入输出系统大题(I/O)
|
2月前
|
监控 C++
【2021全国高校计算机能力挑战赛C++题目】17.信息整理 某机房上线了一套系统,和每台计算机都相连,以便监控各计算机相关外设的运行状态。
【2021全国高校计算机能力挑战赛C++题目】17.信息整理 某机房上线了一套系统,和每台计算机都相连,以便监控各计算机相关外设的运行状态。
|
4月前
|
消息中间件 存储 算法
【操作系统考点汇集】操作系统考点汇集
【操作系统考点汇集】操作系统考点汇集
28 1
|
8月前
第一章 作业(479)【计算机系统结构】
第一章 作业(479)【计算机系统结构】
70 0
|
10月前
|
自然语言处理 算法 区块链
计算机设计大赛心得总结-软件开发组
计算机设计大赛心得总结-软件开发组
|
10月前
|
运维 监控 安全
CISP 考试教材《第 8 章 知识域:物理与网络通信安全》知识整理
CISP 考试教材《第 8 章 知识域:物理与网络通信安全》知识整理
85 0
|
存储 人工智能 算法
计算机导论作业一
计算机导论作业一
49 0
|
存储
计算机导论作业二
计算机导论作业二
82 0