mirror of
https://gitlab.os-k.eu/os-k-team/kvisc.git
synced 2023-08-25 14:05:46 +02:00
124 lines
991 B
Plaintext
124 lines
991 B
Plaintext
# The OS/K Team licences this file to you under the MIT license.
|
|
# See the LICENSE file in the project root for more information.
|
|
|
|
nop
|
|
|
|
#
|
|
# Logical instructions
|
|
#
|
|
|
|
not r
|
|
not m
|
|
|
|
and r r
|
|
and r i
|
|
and r m
|
|
and m r
|
|
and m i
|
|
and m m
|
|
|
|
or r r
|
|
or r i
|
|
or r m
|
|
or m r
|
|
or m i
|
|
or m m
|
|
|
|
xor r r
|
|
xor r i
|
|
xor r m
|
|
xor m r
|
|
xor m i
|
|
xor m m
|
|
|
|
# shift left logical
|
|
shl r r
|
|
shl r i
|
|
shl r m
|
|
shl m r
|
|
shl m i
|
|
shl m m
|
|
|
|
# shift right logical
|
|
shr r r
|
|
shr r i
|
|
shr r m
|
|
shr m r
|
|
shr m i
|
|
shr m m
|
|
|
|
#
|
|
# Unsigned arithmetic instructions
|
|
#
|
|
|
|
add r r
|
|
add r i
|
|
add r m
|
|
add m r
|
|
add m i
|
|
add m m
|
|
|
|
sub r r
|
|
sub r i
|
|
sub r m
|
|
sub m r
|
|
sub m i
|
|
sub m m
|
|
|
|
# rdx = hi(rax * $0)
|
|
# rax = lo(rax * $0)
|
|
mul r
|
|
mul i
|
|
|
|
# rdx = rax % $0
|
|
# rax = rax / $0
|
|
div r
|
|
div i
|
|
|
|
inc r
|
|
inc m
|
|
|
|
dec r
|
|
dec m
|
|
|
|
#
|
|
# Movement instructions
|
|
#
|
|
|
|
mov r r
|
|
mov r i
|
|
mov r m
|
|
mov m r
|
|
mov m i
|
|
mov m m
|
|
|
|
xchg r r
|
|
xchg r i
|
|
xchg r m
|
|
xchg m r
|
|
xchg m i
|
|
xchg m m
|
|
|
|
#
|
|
# Stack manipulation instructions
|
|
#
|
|
|
|
push i
|
|
push r
|
|
|
|
pop r
|
|
|
|
call r
|
|
call i
|
|
call m
|
|
|
|
ret
|
|
|
|
#
|
|
# Supervisor only instructions
|
|
#
|
|
|
|
cli
|
|
sti
|
|
|