Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1041877
  • 博文数量: 197
  • 博客积分: 4141
  • 博客等级: 中将
  • 技术积分: 2263
  • 用 户 组: 普通用户
  • 注册时间: 2009-03-21 20:04
文章存档

2019年(32)

2016年(1)

2014年(16)

2011年(8)

2010年(25)

2009年(115)

分类: 嵌入式

2014-10-05 11:47:56

Hack语言包含了两种指令:1. 地址指令(A指令),2. 计算指令(C指令)

A指令用来为A寄存器设置15位的值:

这个指令使得计算机将特定的值储存到A寄存器中去。比如说,指令@5,也等价于00000000 00000101,则使得计算机将用二进制表示的5储存到A寄存器中。其中,A寄存器的作用:
  • 在程序控制下,它提供了唯一一种“将常数输入计算机”的方法;
  • 其次,通过将目标数据内存单元的地址放入A寄存器,来为将对该内存单元进行的操作的C指令提供必要的条件;
  • 其三,通过将跳转的目的地址放入A寄存器来为执行跳转的C-指令提供条件;

comp域

dest域

jump域


要将三个域comp,dest,jump翻译成各自对应的二进制编码,可以参看下面的三个表。
阅读(1908) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~