Kill mega-sena.sh
[lcapit-junk-code.git] / DLW-1e / Documentation / opcode.txt
blob494c8d40543e0c60496afb32261684cb4e20e119
1                    DLW-1e opcode and instruction format
2                    ====================================
4 1. Instruction format
5 =====================
7 o add/sub
8 ---------
10 - register-type
12 byte 1
13         0:   mode (0)
14         1-3: opcode
15         4,5: source1
16         6,7: source2
18 byte 2
19         8,9:   dest
20         10-15: zero
22 - immediate-type
24 byte 1
25         0:   mode (1)
26         1-3: opcode
27         4,5: source
28         6,7: dest
30 byte 2
31         8-15: 8-bit immediate value
33 o cmp
34 -----
36 - register-type
38 byte 1
39         0:   mode (0)
40         1-3: opcode
41         4,5: source1
42         6,7: source2
44 byte 2
45         zero
47 - immediate-type
49 byte 1
50         0:   mode (1)
51         1-3: opcode
52         4,5: zero
53         6,7: source2
55 byte 2
56         8-15: 8-bit immediate value
58 o halt
59 ------
61 byte 1
62         0:   zero
63         1-3: opcode
64         4-7: zero
66 byte 2
67         zero
69 o jump
70 ------
72 - register-type
74 byte 1
75         0:   mode (0)
76         1-3: opcode
77         4,5: dest
78         6,7: jump code
80 byte 2
81         zero
83 - immediate-type
85 byte 1
86         0:   mode (1)
87         1-3: opcode
88         4,5: jump code
89         6,7: zero
91 byte 2
92         8-bit immediate value
94 o load
95 ------
97 - register-type
99 byte 1
100         0:   mode (0)
101         1-3: opcode
102         4,5: source1
103         6,7: zero
105 byte 2
106         8,9:   dest
107         10-15: zero
109 - immediate-type
111 byte 1
112         0:   mode (1)
113         1-3: opcode
114         4,5: zero
115         6,7: dest
117 byte 2
118         8-15: 8-bit immediate source address
120 o store
121 -------
123 - register-type
125 byte 1
126         0:   mode (0)
127         1-3: opcode
128         4,5: source1
129         6,7: zero
131 byte 2
132         8,9:   dest
133         10-15: zero
135 - immediate-type
137 byte 1
138         0:   mode (1)
139         1-3: opcode
140         4,5: source
141         6,7: zero
143 byte 2
144         8-15: 8-bit immediate dest address
146 2. OpCodes
147 ==========
149 Instruction       opcode
150 -----------       ------
152 add                000
153 sub                001
154 load               010
155 store              011
156 cmp                100
157 ?                  101
158 ?                  110
159 halt               111
161 Jump additional binary-codes
162 ----------------------------
164 Instruction        code
165 -----------        ----
167 jump                00
168 jumpl               01
169 jumpe               10
170 jumpg               11
172 Register binary-codes
173 ---------------------
175 Register        code
176 --------        ----
178 R1               00
179 R2               01
180 R3               10
181 R4               11