aboutsummaryrefslogtreecommitdiffstats
path: root/README.md
diff options
context:
space:
mode:
authorDavid Thomas <d.thomas1@imperial.ac.uk>2014-10-17 15:05:46 +0100
committerDavid Thomas <d.thomas1@imperial.ac.uk>2014-10-17 15:05:46 +0100
commit82c56da53807fcd2c06ee2ffa88fbe7b5a8f3811 (patch)
tree3dcf5b20667f66e832796c625ef84d734b90166e /README.md
parent447c83d9c80a119922c9397e9a196b93e5d068c0 (diff)
downloadMipsCPU-82c56da53807fcd2c06ee2ffa88fbe7b5a8f3811.tar.gz
MipsCPU-82c56da53807fcd2c06ee2ffa88fbe7b5a8f3811.zip
Fixing the rendering of the table in markdown.
Diffstat (limited to 'README.md')
-rw-r--r--README.md100
1 files changed, 50 insertions, 50 deletions
diff --git a/README.md b/README.md
index 3032ad7..7364754 100644
--- a/README.md
+++ b/README.md
@@ -226,56 +226,56 @@ and a rough guide to how complex they are. Note that the complexity is
based on both how easy it is to implement the base functionality,
but also how easy it is to deal with, and try to test, corner cases.
-Code | Meaning | Complexity |
-----------------------------------------------------|------------|
-ADD | Add (with overflow) | 2 XX |
-ADDI | Add immediate (with overflow) | 2 XX |
-ADDIU | Add immediate unsigned (no overflow) | 2 XX |
-ADDU | Add unsigned (no overflow) | 1 X |
-AND | Bitwise and | 1 X |
-ANDI | Bitwise and immediate | 2 XX |
-BEQ | Branch on equal | 3 XXX |
-BGEZ | Branch on greater than or equal to zero | 3 XXX |
-BGEZAL| Branch on greater >=0 zero and link | 4 XXXX |
-BGTZ | Branch on greater than zero | 3 XXX |
-BLEZ | Branch on less than or equal to zero | 3 XXX |
-BLTZ | Branch on less than zero | 3 XXX |
-BLTZAL| Branch on less than zero and link | 4 XXXX |
-BNE | Branch on not equal | 3 XXX |
-DIV | Divide | 4 XXXX |
-DIVU | Divide unsigned | 3 XXXX |
-J | Jump | 3 XXX |
-JAL | Jump and link | 3 XXXX |
-JR | Jump register | 3 XXX |
-LB | Load byte | 4 XXX |
-LBU | Load byte unsigned | 3 XXX |
-LUI | Load upper immediate | 2 XX |
-LW | Load word | 2 XX |
-LWL | Load word left | 5 XXXXX |
-LWR | Load word right | 5 XXXXX |
-MFHI | Move from HI | 3 XXXX |
-MFLO | Move from LO | 3 XXXX |
-MULT | Multiply | 4 XXXX |
-MULTU | Multiply unsigned | 3 XXXX |
-OR | Bitwise or | 1 X |
-ORI | Bitwise or immediate | 2 XX |
-SB | Store byte | 3 XXX |
-SH | Store half-word | 3 XXX |
-SLL | Shift left logical | 2 XX |
-SLLV | Shift left logical variable | 3 XX |
-SLT | Set on less than (signed) | 2 XX |
-SLTI | Set on less than immediate (signed) | 3 XXX |
-SLTIU | Set on less than immediate unsigned | 3 XXX |
-SLTU | Set on less than unsigned | 1 X |
-SRA | Shift right arithmetic | 2 XX |
-SRL | Shift right logical | 2 XX |
-SRLV | Shift right logical variable | 2 XX |
-SUB | Subtract | 2 XX |
-SUBU | Subtract unsigned | 1 X |
-SW | Store word | 2 XX |
-XOR | Bitwise exclusive or | 1 X |
-XORI | Bitwise exclusive or immediate | 2 XX |
-------------------------------------------------------------------
+Code | Meaning | Complexity |
+--------------------------------------------------|-------------|
+ADD | Add (with overflow) | 2 XX |
+ADDI | Add immediate (with overflow) | 2 XX |
+ADDIU | Add immediate unsigned (no overflow) | 2 XX |
+ADDU | Add unsigned (no overflow) | 1 X |
+AND | Bitwise and | 1 X |
+ANDI | Bitwise and immediate | 2 XX |
+BEQ | Branch on equal | 3 XXX |
+BGEZ | Branch on greater than or equal to zero | 3 XXX |
+BGEZAL| Branch on greater >=0 zero and link | 4 XXXX |
+BGTZ | Branch on greater than zero | 3 XXX |
+BLEZ | Branch on less than or equal to zero | 3 XXX |
+BLTZ | Branch on less than zero | 3 XXX |
+BLTZAL| Branch on less than zero and link | 4 XXXX |
+BNE | Branch on not equal | 3 XXX |
+DIV | Divide | 4 XXXX |
+DIVU | Divide unsigned | 3 XXXX |
+J | Jump | 3 XXX |
+JAL | Jump and link | 3 XXXX |
+JR | Jump register | 3 XXX |
+LB | Load byte | 4 XXX |
+LBU | Load byte unsigned | 3 XXX |
+LUI | Load upper immediate | 2 XX |
+LW | Load word | 2 XX |
+LWL | Load word left | 5 XXXXX |
+LWR | Load word right | 5 XXXXX |
+MFHI | Move from HI | 3 XXXX |
+MFLO | Move from LO | 3 XXXX |
+MULT | Multiply | 4 XXXX |
+MULTU | Multiply unsigned | 3 XXXX |
+OR | Bitwise or | 1 X |
+ORI | Bitwise or immediate | 2 XX |
+SB | Store byte | 3 XXX |
+SH | Store half-word | 3 XXX |
+SLL | Shift left logical | 2 XX |
+SLLV | Shift left logical variable | 3 XX |
+SLT | Set on less than (signed) | 2 XX |
+SLTI | Set on less than immediate (signed) | 3 XXX |
+SLTIU | Set on less than immediate unsigned | 3 XXX |
+SLTU | Set on less than unsigned | 1 X |
+SRA | Shift right arithmetic | 2 XX |
+SRL | Shift right logical | 2 XX |
+SRLV | Shift right logical variable | 2 XX |
+SUB | Subtract | 2 XX |
+SUBU | Subtract unsigned | 1 X |
+SW | Store word | 2 XX |
+XOR | Bitwise exclusive or | 1 X |
+XORI | Bitwise exclusive or immediate | 2 XX |
+-----------------------------------------------------------------
This is not quite an exhaustive list of MIPS-1 instructions
(as was originally sort of implied). Some were deliberately left out