计算机系统(1)实验二 LC-3机器码编程实验

计算机系统(1)实验二 LC-3机器码编程实验

实验目的

1.分析和理解试验指定的需解决问题。

2.利用LC-3的机器代码设计实现相关程序。

3.通过LC-3仿真器调试和运行相关程序并得到正确的结果。

实验内容与实验要求

利用LC-3的机器代码计算一个16位的字中有多少位是“1”,程序从x3000开始,需计算的字存储在x4000(内存编辑提前写入),计算的结果存储在x4001

实验步骤

1.编写程序代码。
在这里插入图片描述
2.运行程序代码,在x4000输入数据,运行后查看R3结果是否正确,在x4001处查看R3的值是否已被存入。输入其它数据检测结果,实验结果正确,实验完成。

在这里插入图片描述
图一
在这里插入图片描述
图二

在这里插入图片描述
图三

在这里插入图片描述
图四

在这里插入图片描述
图五

在这里插入图片描述
图六

在这里插入图片描述
图七

程序代码及注释

0011 0000 0000 0000;将程序的起始位置设在x3000
0101 011 011 1 00000;R3清零,放1的个数
1010 001 000 0 01100;地址x300E用来存放x4000的地址,将数据存入R1
0101 010 010 1 00000;R2清零
0001 010 010 1 01111;
0001 010 010 1 00001;R2加16
0000 010 0000 00110;判断R2是否等于0,是则跳到x300C
0001 010 010 1 11111;R2-1
0001 001 001 1 00000;R1
0000 011 0000 00001;判断R1是否小于0,否则跳到x300A
0001 011 011 1 00001;R3+1
0001 001 001 0 00 001;R1=R1+R1
0000 111 111111001;跳回x3005
0010 100 000000001;R4放x4000的地址
0111 011 100 000001;将R3的值写入x4001
0100 0000 0000 0000;x4000的地址

实验结论

通过本次实验我进一步熟练使用LC-3Edit和Simulate,对LC-3的指令有了更深入的理解。

  • 2
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值