The basic introduction to MIX language and machine
reference: The MIX Computer, The MIX Introduction sets,
The basic info storage unit in MIX computer is the byte, which stores positive values in the range of 0 to 63. In MIX, Byte only has 6 bytes, and the word Byte refer to MIX 6-byte.
A MIX word is defined as set of 5 bytes and plus a sign. The bytes within a word are numbered from 1 to 5, The sign of a number is denoted by index 0. Graphincally.
-----------------------------------------------
| 0 | 1 | 2 | 3 | 4 | 5 |
-----------------------------------------------
| +/- | byte | byte | byte | byte | byte |
-----------------------------------------------
We can refer to subfields within a word using a field specification or fspec of the form "(L:R)", where L denotes the first byte, and R the last byte of the subfield.
Registers:
rA
A register, general purpose register holding a word usually serving as the operadn of the arithmetic and storing instructions.
rX
X register, general purpose register holding a word, acting as an extension or a replacement of 'rA'
rJ
jump register stores positive 2-bytes values, representing a jump addresss.
rI1, rI2, rI3, rI4, rI5, rI6
OV
overflow toggle( a bit with valuess on and off), denoted as OV
CM
comparision indicator, having 3 values: EQUAL, GREATER or LESS, possible value are abbreviated as E, G, L
I/O
input-output block device, each device labelled as un, ranging from 0 to 20. And u0 to u7 are magnetic tape units, u8 through 15 are disks and drums, u16 is a card reader, u17 is a card writer, u18 is a line printer and, u19 is a typewirter terminal and u20 a paper tape.
CPU
MIX owes a virtual CPU which controls the above components, able to execute a rich set of instructions. As von Neumann computer, the CPU fetches binary instructions from memory sequentially, and stores the add of the next instrutions in an internal register called location counter(known as PC in other computer)
Instruction structure
MIX instructions are codified as words with the following subfield sturcture:
Subfield | fspec | Description |
ADDRESS | (0:2) | The first two bytes plus sign are the address field. Combined with the INDEX field, denotes the memory address to be used by the instruction. |
INDEX | (3:3) | The third byte is the index, normally used for indexing the address3. |
MOD | (4:4) | Byte four is used either as an operation code modifier or as a field specification. |
OPCODE | (5:5) | The last (least significant) byte in the word denotes the operation code. |
The first 2 bytes plus sign are the address field, combined with the INDEX field(for address stored in index register refered by INDEX byte)
For given a instruction, 'add' stands for the mem address after combining the address in address field and and 'cont' is the contents of the subfield indicated by MOD of the memory cell with address.
[rI2] = + 00 63
[31] = - 10 11 00 11 22
Given instruction ‘I = - 00 32 02 11 10’, we have:
ADDRESS = - 00 32
INDEX = 02 = 2
MOD = 11 = (1:3)
OPCODE = 10
add = ADDRESS + [rI2] = 63 + (-32) = 31
cont = [M](MOD) = (- 10 11 00 11 22)(1:3)
While "MOD" means we use left padding to the bytes selected by ‘MOD’ to obtain a complete word as the result.
IF we use mnemonic name assigned to this MIX instruction, we can rewrite the above instruction as:
LD2 -32, 2(1:3)
or, for a generic instruction:
MNEMONIC ADDRESSS, INDEX(MOD)
note:
MOD equals to (0:5) means the whole word.
The basic introduction to MIX language and machine的更多相关文章
- Something on RoIAlign --- basic introduction and implementation
Something on RoIAlign --- basic introduction and implementation 2018-10-22 22:40:09 Paper: Mask RCNN ...
- RESTFul basic introduction
http://www.ruanyifeng.com/blog/2011/09/restful.html
- 可分离卷积详解及计算量 Basic Introduction to Separable Convolutions
任何看过MobileNet架构的人都会遇到可分离卷积(separable convolutions)这个概念.但什么是“可分离卷积”,它与标准的卷积又有什么区别?可分离卷积主要有两种类型: 空间可分离 ...
- Cyber Security - Palo Alto Basic Introduction
Preparation of the Lab Environment: Download and Install Pan-OS from the following website https://d ...
- Introduction to Machine Learning
Chapter 1 Introduction 1.1 What Is Machine Learning? To solve a problem on a computer, we need an al ...
- Machine Learning Algorithms Study Notes(1)--Introduction
Machine Learning Algorithms Study Notes 高雪松 @雪松Cedro Microsoft MVP 目 录 1 Introduction 1 1.1 ...
- How do I learn machine learning?
https://www.quora.com/How-do-I-learn-machine-learning-1?redirected_qid=6578644 How Can I Learn X? ...
- Machine and Deep Learning with Python
Machine and Deep Learning with Python Education Tutorials and courses Supervised learning superstiti ...
- (zhuan) Speech and Natural Language Processing
Speech and Natural Language Processing obtain from this link: https://github.com/edobashira/speech-l ...
随机推荐
- 修改SharePoint平台登录者显示名称
protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { //提升权限,拿系统服务帐号来执行此段代码 ...
- 生成64位代码的mdb数据库连接串Provider的设置
生成32位程序的mdb连接串的 Provider为:Provider=Microsoft.Jet.OLEDB.4.0 而生成64位代码时,则需要使用如下的 Provider Provider=Micr ...
- nutch2.3命令参数解析
nutch中可执行的命令列表 [root@ewanalysis ~]# nutch Usage: nutch COMMAND where COMMAND is one of: inject injec ...
- juce中的CallbackMessage
这个类作为所有消息的基类,主要是包装了回调函数 virtual void messageCallback() = 0; /* ===================================== ...
- centos之jdk安装
1.环境说明 系统:centos6.7, 2.6.32-573.el6.x86_64; jdk:jdk1.7.0_80 2.下载jdk并上传 下载jdk-7u80-linux-x64.tar ...
- silverlight控件动画状态的过渡
动画代码: xmlns:vsm="clr-namespace:System.Windows;assembly=System.Windows" <vsm:VisualState ...
- 内存(MRC)
一.计数器的基本操作1> retain : +1, 方法返回的是对象本身2> release :-13> retainCount : 获得计数器4> dealloc * 当一 ...
- visual studio 配置OpenGL环境
首先在网上下载一个GLUT工具包. glut.zip,大约一百多kb. 解压之后得到这么几个文件: 将glut.h复制到C:\Program Files (x86)\Microsoft Visual ...
- 源码学习之ASP.NET MVC Application Using Entity Framework
源码学习的重要性,再一次让人信服. ASP.NET MVC Application Using Entity Framework Code First 做MVC已经有段时间了,但看了一些CodePle ...
- 电池和Adapter切换电路改进实验
目的:很多单电池的机器在大负载的情况下,如把背光开到最亮,运行3D游戏,此时拔DC电源很容易出现机器死机,或花屏现象: 原因:Q5的导通时间不够,希望通过G极的快速放电,加快到导通时间: 修改前的电路 ...