1
0
mirror of https://gitlab.os-k.eu/os-k-team/kvisc.git synced 2023-08-25 14:05:46 +02:00
kvisc/vm/pc/DECD
julianb0 10beb59a31
vm
2019-06-08 07:47:08 +02:00

54 lines
1.2 KiB
Plaintext

# The OS/K Team licenses this file to you under the MIT license.
# See the LICENSE file in the project root for more information.
Instruction encoding:
15 0 15 0
xxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxx
││└────────────┘ │└───┘└───┘└───┘
││ INSTR. │ CND FT1 FT2
││ │
LM R
M No more words
L LOCK prefix
R REP prefix
FT1 First operand format
FT2 Second operand format
Values for COND:
00000 (none)
00001 .C
00010 .O
00011 .Z .E
00100 .S
00101 .P
00110 .A
00111 .AE
01000 .B
01001 .BE
01010 .G
01011 .GE
01100 .L
01101 .LE
01110 .CXZ
01111 (reserved)
Highest (6th) bit of COND indicates negation
Fx values:
0000 (none)
0001 reg
0010 imm64
xxx00 [imm64]
xxx01 [reg+reg] code(reg)|code(reg)
xxx10 [reg+reg+imm16] code(reg)|code(reg) imm16
xxx11 [reg+reg*imm16+imm16] code(reg)|code(reg) imm16 imm16
Where xxx is:
001 8-bit access
010 16-bit access
011 32-bit access
100 64-bit access