Difference between revisions of "Simple Computer Simulator Instruction-Set"

From dftwiki3
Jump to: navigation, search
Line 1: Line 1:
 
--[[User:Thiebaut|D. Thiebaut]] ([[User talk:Thiebaut|talk]]) 16:57, 26 August 2014 (EDT)
 
--[[User:Thiebaut|D. Thiebaut]] ([[User talk:Thiebaut|talk]]) 16:57, 26 August 2014 (EDT)
 
----
 
----
 +
 +
=Instructions Using a Single Constant=
 +
<br />
 +
These instructions operate with a single number (we refer to them as ''constants'') that is either loaded into, added, or subtracted from the accumulator register.
 +
<br />
 +
 
{| class="wikitable" width="100%"
 
{| class="wikitable" width="100%"
 
! width="20%" | Instruction
 
! width="20%" | Instruction
Line 7: Line 13:
 
!  width="50%" |Description
 
!  width="50%" |Description
 
|-
 
|-
 
 
|
 
|
 
ADD
 
ADD
Line 16: Line 21:
 
|
 
|
 
*
 
*
 +
|-
 +
|
 +
COMP
 +
|
 +
84
 +
|
 +
01010100
 +
|
 +
*
 +
|-
 +
|
 +
DIV
 +
|
 +
44
 +
|
 +
00101100
 +
|
 +
*
 +
|-
 +
|
 +
LOAD
 +
|
 +
4
 +
|
 +
00000100
 +
|
 +
*
 +
|-
 +
|
 +
MUL
 +
|
 +
40
 +
|
 +
00101000
 +
|
 +
*
 +
|-
 +
|
 +
SUB
 +
|
 +
32
 +
|
 +
00100000
 +
|
 +
*
 +
 +
|}
 +
<br />
 +
==Memory Instructions==
 +
<br />
 +
 +
{| class="wikitable" width="100%"
 +
! width="20%" | Instruction
 +
! width="15%" |Code<br />(decimal)
 +
! width="15%" |Code<br />( binary)
 +
!  width="50%" |Description
 
|-
 
|-
 
|
 
|
Line 61: Line 122:
 
|
 
|
 
*
 
*
|-
+
 
|
 
COMP
 
|
 
84
 
|
 
01010100
 
|
 
*
 
 
|-
 
|-
 
|
 
|
Line 115: Line 168:
 
|
 
|
 
*
 
*
|-
+
 
|
 
DIV
 
|
 
44
 
|
 
00101100
 
|
 
*
 
 
|-
 
|-
 
|
 
|
Line 178: Line 223:
 
|
 
|
 
*
 
*
|-
+
 
|
 
LOAD
 
|
 
4
 
|
 
00000100
 
|
 
*
 
 
|-
 
|-
 
|
 
|
Line 232: Line 269:
 
|
 
|
 
*
 
*
|-
+
 
|
 
MUL
 
|
 
40
 
|
 
00101000
 
|
 
*
 
 
|-
 
|-
 
|
 
|
Line 304: Line 333:
 
|
 
|
 
*
 
*
|-
+
 
|
 
SUB
 
|
 
32
 
|
 
00100000
 
|
 
*
 
 
|-
 
|-
 
|
 
|

Revision as of 13:52, 27 August 2014

--D. Thiebaut (talk) 16:57, 26 August 2014 (EDT)


Instructions Using a Single Constant


These instructions operate with a single number (we refer to them as constants) that is either loaded into, added, or subtracted from the accumulator register.

Instruction Code
(decimal)
Code
( binary)
Description

ADD

24

00011000

COMP

84

01010100

DIV

44

00101100

LOAD

4

00000100

MUL

40

00101000

SUB

32

00100000


Memory Instructions


Instruction Code
(decimal)
Code
( binary)
Description

ADDX

28

00011100

ADDXm

30

00011110

ADDXx

29

00011101

ADDm

26

00011010

ADDx

25

00011001

COMPX

92

01011100

COMPXm

94

01011110

COMPXx

93

01011101

COMPm

86

01010110

COMPx

85

01010101

DIVm

46

00101110

DIVx

45

00101101

HALT

127

01111111

JEQ

68

01000100

JLT

72

01001000

JUMP

64

01000000

LOADX

8

00001000

LOADXm

10

00001010

LOADXx

9

00001001

LOADm

6

00000110

LOADx

5

00000101

MULm

42

00101010

MULx

41

00101001

NOP

0

00000000

STOREXm

22

00010110

STOREXx

21

00010101

STOREm

18

00010010

STOREx

17

00010001

SUBX

36

00100100

SUBXm

38

00100110

SUBXx

37

00100101

SUBm

34

00100010

SUBx

33

00100001

TAX

79

01001111

TXA

83

01010011