zoukankan      html  css  js  c++  java
  • The basic introduction to MIX language and machine

    reference: The MIX ComputerThe 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.

  • 相关阅读:
    2020 年最棒的 9 个 Java 框架,哪个最香?
    CTO:不要在 Java 代码中写 set/get 方法了,逮一次罚款
    面试常考:Java中synchronized和volatile有什么区别?
    树莓派3B装ubuntu server后开启wifi
    转:程序内存空间(代码段、数据段、堆栈段)
    环境变量IFS
    python之格式化字符串速记整理
    logging模块简单用法
    理解正则表达式的匹配关系
    cut和tr命令的联合使用
  • 原文地址:https://www.cnblogs.com/wenwangt/p/5172251.html
Copyright © 2011-2022 走看看