计算机系统
文章平均质量分 85
Elvis.li
Constant dropping wears the stone.
展开
-
LC-3下汇编实现简易版四子棋的游戏
问题描述:两位选手通过键盘和输出窗口轮流交互操作,棋盘由6 X 6的网格组成。游戏规则如下:两位选手依次轮流落子;选手不能悔棋;有子的地方不能继续落子;直到有一方的四个棋子能够连成一条水平线、垂直线或者是对角线;如果棋盘已满,无人获胜,则平局。游戏最初时应该打印空的棋盘,可以用ASCII码"-" (即ASCII 码 x002D)来表示该处为空,"O"(ASCII 码原创 2017-05-06 22:02:30 · 7606 阅读 · 2 评论 -
LC-3中断实验
基于LC-3的中断返回机制和原理,在LC-3仿真环境下编辑一个简单的用户程序以及中断服务程序。原创 2017-06-18 09:49:00 · 7851 阅读 · 0 评论 -
WinMIPS64指令集实验--简单的IO实例--HelloWorld
编写一个简单的终端输出“Hello World!!”的小程序。先将CONTROL和DATA地址读取到寄存器,然后分别在这两个区域内存储相应的序列号(如上图所示)和要显示在Terminal窗口的数据。代码实现:.datastr: .asciiz "Hello World!"CONTROL: .word32 0x10000DATA: .word32 0x10008.text原创 2017-10-07 12:32:22 · 5289 阅读 · 0 评论 -
WinMIPS64下实现冒泡排序(函数调用)
问题描述:在这一部分,我们要求编写一个排序算法,对一组int型数据进行排序。该算法使用冒泡排序法,并且在其中嵌入一个swap函数过程(该算法在课本上有完整的程序,但是其中的数据初始化、寄存器映射、命令的映射以及I/O部分还需要自己手动编写)。编写完成后,在asm.exe中进行检测,然后运行。初始数据要求为:“array: .word 8,6,3,7,1,0,9,4,5,2”该程序需要对原创 2017-10-08 15:49:59 · 4396 阅读 · 5 评论 -
WinMIPS64乘法器模拟(优化溢出提示)
忽略溢出的乘法器其实比较容易实现,只需按照手动运算一步步求解即可。其大致可以分为4步(其为Copy版):1. 测试乘数最低位是否为1,是则给乘积加上被乘数,将结果写入乘积寄存器;2. 被乘数寄存器左移1位;3. 乘数寄存器右移一位;4. 判断是否循环了32次,如果是,则结束,否则返回步骤1。其流程图十分清晰:实现代码如下:原创 2017-10-23 20:21:10 · 4416 阅读 · 0 评论