2019-06-23 12:40:18 +02:00
|
|
|
# The OS/K Team licenses this file to you under the MIT license.
|
|
|
|
# See the LICENSE file in the project root for more information.
|
|
|
|
|
|
|
|
#---------------------------------------------------------------------------#
|
|
|
|
# Jump instructions #
|
|
|
|
#---------------------------------------------------------------------------#
|
|
|
|
|
|
|
|
#
|
2019-07-01 21:46:36 +02:00
|
|
|
# Jump (JMP) instruction
|
2019-06-23 12:40:18 +02:00
|
|
|
#
|
|
|
|
# RIP = $1
|
|
|
|
#
|
|
|
|
j ri
|
|
|
|
jmp ri
|
|
|
|
|
|
|
|
#
|
2019-07-01 21:46:36 +02:00
|
|
|
# RCX-dependent jump (LOOP) instruction
|
2019-06-23 12:40:18 +02:00
|
|
|
#
|
|
|
|
# IF (RCX > 0) THEN
|
|
|
|
# RCX = RCX - 1
|
|
|
|
# RIP = $1
|
|
|
|
# FI
|
|
|
|
#
|
|
|
|
loop ri
|
2019-06-30 13:46:44 +02:00
|
|
|
|
|
|
|
#
|
2019-07-02 20:13:05 +02:00
|
|
|
# Conditional absolute jumps (B)
|
2019-06-30 13:46:44 +02:00
|
|
|
#
|
2019-07-02 20:13:05 +02:00
|
|
|
# COMPARE($1, $2)
|
2019-06-30 13:46:44 +02:00
|
|
|
#
|
2019-07-02 20:13:05 +02:00
|
|
|
# IF (COND) THEN
|
|
|
|
# RIP = $3
|
|
|
|
# FI
|
2019-06-30 13:46:44 +02:00
|
|
|
#
|
2019-07-02 20:13:05 +02:00
|
|
|
# Sets CF, OF, ZF and SF according to the comparison's results
|
2019-06-30 13:46:44 +02:00
|
|
|
#
|
2019-07-02 20:13:05 +02:00
|
|
|
# This instruction is special in that the COND field specified is not evaluated
|
|
|
|
# before the instruction is executed, but after the comparison it effectuates
|
|
|
|
#
|
|
|
|
# Suffixing B with the REP suffix results in undefined behavior
|
2019-06-30 13:46:44 +02:00
|
|
|
#
|
2019-07-04 20:33:49 +02:00
|
|
|
b rm ri ri
|
2019-06-30 13:46:44 +02:00
|
|
|
|