Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ########## 16 bit ISA ##########
- Registers:
- PC (16 bit)
- SP (16 bit)
- R0-R15 (16 bit)
- UI (12 bit)
- Register values on reset:
- PC: 0x0000
- SP: 0x0000
- R0-R15: Undefined
- Flags:
- Carry (C)
- Zero (Z)
- Sign (S)
- Overflow (O)
- Flag values are undefined on reset
- Memory map:
- 0x0000 - 0x0FFF: ROM
- 0x1000 - 0x3FFF: RAM
- 0x4000 - 0x7FFF: Bank
- 0x8000 - 0xEFFF: RAM
- 0xF000 - 0xF0FF: IO
- 0xF100 - 0xFFFF: Stack
- Instructions:
- Format is <inst> <target>,<source>
- - means the bit does not matter
- Any permutation not covered is a NOP
- Nop 0000_0000_0000_0000
- Brk 0000_0000_0000_0001
- Jp.c r 0000_0001_0001_rrrr ; if C then pc = r
- Jp.z r 0000_0001_0010_rrrr ; if Z then pc = r
- Jp.s r 0000_0001_0011_rrrr ; if S then pc = r
- Jp.o r 0000_0001_0100_rrrr ; if O then pc = r
- Jp.nc r 0000_0001_0101_rrrr ; if !C then pc = r
- Jp.nz r 0000_0001_0110_rrrr ; if !Z then pc = r
- Jp.ns r 0000_0001_0111_rrrr ; if !S then pc = r
- Jp.no r 0000_0001_1000_rrrr ; if !O then pc = r
- Jp.u.le r 0000_0001_1001_rrrr ; if !C || Z then pc = r
- Jp.u.g r 0000_0001_1010_rrrr ; if C && !Z then pc = r
- Jp.s.l r 0000_0001_1011_rrrr ; if S != O then pc = r
- Jp.s.ge r 0000_0001_1100_rrrr ; if S == O then pc = r
- Jp.s.le r 0000_0001_1101_rrrr ; if Z || (S != O) then pc = r
- Jp.s.g r 0000_0001_1110_rrrr ; if !Z && (S == O) then pc = r
- Jmp r 0000_0001_1111_rrrr ; pc = r
- Jp.c [r] 0000_0010_0001_rrrr ; if C then pc = mem[r]
- Jp.z [r] 0000_0010_0010_rrrr ; if Z then pc = mem[r]
- Jp.s [r] 0000_0010_0011_rrrr ; if S then pc = mem[r]
- Jp.o [r] 0000_0010_0100_rrrr ; if O then pc = mem[r]
- Jp.nc [r] 0000_0010_0101_rrrr ; if !C then pc = mem[r]
- Jp.nz [r] 0000_0010_0110_rrrr ; if !Z then pc = mem[r]
- Jp.ns [r] 0000_0010_0111_rrrr ; if !S then pc = mem[r]
- Jp.no [r] 0000_0010_1000_rrrr ; if !O then pc = mem[r]
- Jp.u.le [r] 0000_0010_1001_rrrr ; if !C || Z then pc = mem[r]
- Jp.u.g [r] 0000_0010_1010_rrrr ; if C && !Z then pc = mem[r]
- Jp.s.l [r] 0000_0010_1011_rrrr ; if S != O then pc = mem[r]
- Jp.s.ge [r] 0000_0010_1100_rrrr ; if S == O then pc = mem[r]
- Jp.s.le [r] 0000_0010_1101_rrrr ; if Z || (S != O) then pc = mem[r]
- Jp.s.g [r] 0000_0010_1110_rrrr ; if !Z && (S == O) then pc = mem[r]
- Jmp [r] 0000_0010_1111_rrrr ; pc = mem[r]
- Jpi.c v 0000_0011_0001_vvvv ; if C then pc = (UI << 4) | v
- Jpi.z v 0000_0011_0010_vvvv ; if Z then pc = (UI << 4) | v
- Jpi.s v 0000_0011_0011_vvvv ; if S then pc = (UI << 4) | v
- Jpi.o v 0000_0011_0100_vvvv ; if O then pc = (UI << 4) | v
- Jpi.nc v 0000_0011_0101_vvvv ; if !C then pc = (UI << 4) | v
- Jpi.nz v 0000_0011_0110_vvvv ; if !Z then pc = (UI << 4) | v
- Jpi.ns v 0000_0011_0111_vvvv ; if !S then pc = (UI << 4) | v
- Jpi.no v 0000_0011_1000_vvvv ; if !O then pc = (UI << 4) | v
- Jpi.u.le v 0000_0011_1001_vvvv ; if !C || Z then pc = (UI << 4) | v
- Jpi.u.g v 0000_0011_1010_vvvv ; if C && !Z then pc = (UI << 4) | v
- Jpi.s.l v 0000_0011_1011_vvvv ; if S != O then pc = (UI << 4) | v
- Jpi.s.ge v 0000_0011_1100_vvvv ; if S == O then pc = (UI << 4) | v
- Jpi.s.le v 0000_0011_1101_vvvv ; if Z || (S != O) then pc = (UI << 4) | v
- Jpi.s.g v 0000_0011_1110_vvvv ; if !Z && (S == O) then pc = (UI << 4) | v
- Jmpi v 0000_0011_1111_vvvv ; pc = (UI << 4) | v
- Jpi.c [v] 0000_0100_0001_vvvv ; if C then pc = mem[(UI << 4) | v]
- Jpi.z [v] 0000_0100_0010_vvvv ; if Z then pc = mem[(UI << 4) | v]
- Jpi.s [v] 0000_0100_0011_vvvv ; if S then pc = mem[(UI << 4) | v]
- Jpi.o [v] 0000_0100_0100_vvvv ; if O then pc = mem[(UI << 4) | v]
- Jpi.nc [v] 0000_0100_0101_vvvv ; if !C then pc = mem[(UI << 4) | v]
- Jpi.nz [v] 0000_0100_0110_vvvv ; if !Z then pc = mem[(UI << 4) | v]
- Jpi.ns [v] 0000_0100_0111_vvvv ; if !S then pc = mem[(UI << 4) | v]
- Jpi.no [v] 0000_0100_1000_vvvv ; if !O then pc = mem[(UI << 4) | v]
- Jpi.u.le [v] 0000_0100_1001_vvvv ; if !C || Z then pc = mem[(UI << 4) | v]
- Jpi.u.g [v] 0000_0100_1010_vvvv ; if C && !Z then pc = mem[(UI << 4) | v]
- Jpi.s.l [v] 0000_0100_1011_vvvv ; if S != O then pc = mem[(UI << 4) | v]
- Jpi.s.ge [v] 0000_0100_1100_vvvv ; if S == O then pc = mem[(UI << 4) | v]
- Jpi.s.le [v] 0000_0100_1101_vvvv ; if Z || (S != O) then pc = mem[(UI << 4) | v]
- Jpi.s.g [v] 0000_0100_1110_vvvv ; if !Z && (S == O) then pc = mem[(UI << 4) | v]
- Jmpi [v] 0000_0100_1111_vvvv ; pc = mem[(UI << 4) | v]
- Clc 0000_0101_---0_---- ; C = 0
- Sec 0000_0101_---1_---- ; C = 1
- Push r 0000_0110_--00_rrrr ; mem[sp--] = r
- Pop r 0000_0110_--01_rrrr ; r = mem[++sp]
- Push [r] 0000_0110_--10_rrrr ; mem[sp--] = mem[r]
- Pop [r] 0000_0110_--11_rrrr ; mem[r] = mem[++sp]
- Swap r 0000_0111_---0_rrrr ; (Z, S) r_l = r_h, r_h = r_l
- Swap [r] 0000_0111_---1_rrrr ; (Z, S) r_l = r_h, r_h = r_l
- Add t,sp 0000_1000_---0_tttt ; (C, Z, S, O) t = t + sp
- Addc t,sp 0000_1000_---1_tttt ; (C, Z, S, O) t = t + sp + C
- Addi sp,v 0000_1001_--00_vvvv ; (C, Z, S, O) sp = sp + ((UI << 4) | v)
- Addci sp,v 0000_1001_--01_vvvv ; (C, Z, S, O) sp = sp + ((UI << 4) | v) + C
- Subi sp,v 0000_1001_--10_vvvv ; (C, Z, S, O) sp = sp - ((UI << 4) | v)
- Subbi sp,v 0000_1001_--11_vvvv ; (C, Z, S, O) sp = sp - ((UI << 4) | v) - !C
- Inc r 0000_1010_0000_rrrr ; (C, Z, S, O) r += 1
- Incc r 0000_1010_0001_rrrr ; (C, Z, S, O) r += C
- Dec r 0000_1010_0010_rrrr ; (C, Z, S, O) r -= 1
- Decb r 0000_1010_0011_rrrr ; (C, Z, S, O) r -= !C
- Inc [r] 0000_1010_0100_rrrr ; (C, Z, S, O) mem[r] += 1
- Incc [r] 0000_1010_0101_rrrr ; (C, Z, S, O) mem[r] += C
- Dec [r] 0000_1010_0110_rrrr ; (C, Z, S, O) mem[r] -= 1
- Decb [r] 0000_1010_0111_rrrr ; (C, Z, S, O) mem[r] -= !C
- Inci [v] 0000_1010_1-00_vvvv ; (C, Z, S, O) mem[(UI << 4) | v] += 1
- Incci [v] 0000_1010_1-01_vvvv ; (C, Z, S, O) mem[(UI << 4) | v] += C
- Deci [v] 0000_1010_1-10_vvvv ; (C, Z, S, O) mem[(UI << 4) | v] -= 1
- Decbi [v] 0000_1010_1-11_vvvv ; (C, Z, S, O) mem[(UI << 4) | v] -= !C
- Mov t,s 0001_tttt_-000_ssss ; t = s
- Mov [t],[s] 0001_tttt_-001_ssss ; mem[t] = mem[s]
- Mov sp,s 0001_----_-010_ssss ; sp = s
- Mov t,sp 0001_tttt_-011_---- ; t = sp
- Ld t,[s] 0001_tttt_-100_ssss ; t = mem[s]
- St [t],s 0001_tttt_-101_ssss ; mem[t] = s
- Ld sp,[s] 0001_----_-110_ssss ; sp = mem[s]
- St [t],sp 0001_tttt_-111_---- ; mem[t] = sp
- Ldui v 0010_vvvv_vvvv_vvvv ; UI = v
- Ldi t,v 0011_tttt_--00_vvvv ; t = (UI << 4) | v
- Ldi t,[v] 0011_tttt_--01_vvvv ; t = mem[(UI << 4) | v]
- Sti [v],s 0011_ssss_--1-_vvvv ; mem[(UI << 4) | v] = s
- Add t,s 0100_tttt_0000_ssss ; (C, Z, S, O) t = t + s
- Addc t,s 0100_tttt_0001_ssss ; (C, Z, S, O) t = t + s + C
- Sub t,s 0100_tttt_0010_ssss ; (C, Z, S, O) t = t - s
- Subb t,s 0100_tttt_0011_ssss ; (C, Z, S, O) t = t - s - !C
- Cmp t,s 0100_tttt_0100_ssss ; (C, Z, S, O) _ = t - s
- Neg t,s 0100_tttt_0101_ssss ; (C, Z, S, O) t = -s
- Negb t,s 0100_tttt_0110_ssss ; (C, Z, S, O) t = -s - !C
- And t,s 0100_tttt_0111_ssss ; (Z, S) t = t & s
- Bit t,s 0100_tttt_1000_ssss ; (Z, S) _ = t & s
- Or t,s 0100_tttt_1001_ssss ; (Z, S) t = t | s
- Xor t,s 0100_tttt_1010_ssss ; (Z, S) t = t ^ s
- Not t,s 0100_tttt_1011_ssss ; (Z, S) t = !s
- Shl t,s 0100_tttt_1100_ssss ; (Z, S) t = t << s
- Lsr t,s 0100_tttt_1101_ssss ; (Z, S) t = t >> s
- Asr t,s 0100_tttt_1110_ssss ; (Z, S) t = t >> s (sign bit preserved)
- Test s 0100_----_1111_ssss ; (Z, S) _ = r
- Add t,[s] 0101_tttt_0000_ssss ; (C, Z, S, O) t = t + mem[s]
- Addc t,[s] 0101_tttt_0001_ssss ; (C, Z, S, O) t = t + mem[s] + C
- Sub t,[s] 0101_tttt_0010_ssss ; (C, Z, S, O) t = t - mem[s]
- Subb t,[s] 0101_tttt_0011_ssss ; (C, Z, S, O) t = t - mem[s] - !C
- Cmp t,[s] 0101_tttt_0100_ssss ; (C, Z, S, O) _ = t - mem[s]
- Neg t,[s] 0101_tttt_0101_ssss ; (C, Z, S, O) t = -mem[s]
- Negb t,[s] 0101_tttt_0110_ssss ; (C, Z, S, O) t = -mem[s] - !C
- And t,[s] 0101_tttt_0111_ssss ; (Z, S) t = t & mem[s]
- Bit t,[s] 0101_tttt_1000_ssss ; (Z, S) _ = t & mem[s]
- Or t,[s] 0101_tttt_1001_ssss ; (Z, S) t = t | mem[s]
- Xor t,[s] 0101_tttt_1010_ssss ; (Z, S) t = t ^ mem[s]
- Not t,[s] 0101_tttt_1011_ssss ; (Z, S) t = !mem[s]
- Shl t,[s] 0101_tttt_1100_ssss ; (Z, S) t = t << mem[s]
- Lsr t,[s] 0101_tttt_1101_ssss ; (Z, S) t = t >> mem[s]
- Asr t,[s] 0101_tttt_1110_ssss ; (Z, S) t = t >> mem[s] (sign bit preserved)
- Test [s] 0101_----_1111_ssss ; (Z, S) _ = mem[r]
- Add [t],s 0110_tttt_0000_ssss ; (C, Z, S, O) mem[t] = mem[t] + s
- Addc [t],s 0110_tttt_0001_ssss ; (C, Z, S, O) mem[t] = mem[t] + s + C
- Sub [t],s 0110_tttt_0010_ssss ; (C, Z, S, O) mem[t] = mem[t] - s
- Subb [t],s 0110_tttt_0011_ssss ; (C, Z, S, O) mem[t] = mem[t] - s - !C
- Cmp [t],s 0110_tttt_0100_ssss ; (C, Z, S, O) _ = mem[t] - s
- Neg [t],s 0110_tttt_0101_ssss ; (C, Z, S, O) mem[t] = -s
- Negb [t],s 0110_tttt_0110_ssss ; (C, Z, S, O) mem[t] = -s - !C
- And [t],s 0110_tttt_0111_ssss ; (Z, S) mem[t] = mem[t] & s
- Bit [t],s 0110_tttt_1000_ssss ; (Z, S) _ = mem[t] & s
- Or [t],s 0110_tttt_1001_ssss ; (Z, S) mem[t] = mem[t] | s
- Xor [t],s 0110_tttt_1010_ssss ; (Z, S) mem[t] = mem[t] ^ s
- Not [t],s 0110_tttt_1011_ssss ; (Z, S) mem[t] = !s
- Shl [t],s 0110_tttt_1100_ssss ; (Z, S) mem[t] = mem[t] << s
- Lsr [t],s 0110_tttt_1101_ssss ; (Z, S) mem[t] = mem[t] >> s
- Asr [t],s 0110_tttt_1110_ssss ; (Z, S) mem[t] = mem[t] >> s (sign bit preserved)
- Addi t,v 0111_tttt_0000_vvvv ; (C, Z, S, O) t = t + ((UI << 4) | v)
- Addci t,v 0111_tttt_0001_vvvv ; (C, Z, S, O) t = t + ((UI << 4) | v) + C
- Subi t,v 0111_tttt_0010_vvvv ; (C, Z, S, O) t = t - ((UI << 4) | v)
- Subbi t,v 0111_tttt_0011_vvvv ; (C, Z, S, O) t = t - ((UI << 4) | v) - !C
- Cmpi t,v 0111_tttt_0100_vvvv ; (C, Z, S, O) _ = t - ((UI << 4) | v)
- Negi t,v 0111_tttt_0101_vvvv ; (C, Z, S, O) t = -((UI << 4) | v)
- Negbi t,v 0111_tttt_0110_vvvv ; (C, Z, S, O) t = -((UI << 4) | v) - !C
- Andi t,v 0111_tttt_0111_vvvv ; (Z, S) t = t & ((UI << 4) | v)
- Biti t,v 0111_tttt_1000_vvvv ; (Z, S) _ = t & ((UI << 4) | v)
- Ori t,v 0111_tttt_1001_vvvv ; (Z, S) t = t | ((UI << 4) | v)
- Xori t,v 0111_tttt_1010_vvvv ; (Z, S) t = t ^ ((UI << 4) | v)
- Noti t,v 0111_tttt_1011_vvvv ; (Z, S) t = !((UI << 4) | v)
- Shli t,v 0111_tttt_1100_vvvv ; (Z, S) t = t << ((UI << 4) | v)
- Lsri t,v 0111_tttt_1101_vvvv ; (Z, S) t = t >> ((UI << 4) | v)
- Asri t,v 0111_tttt_1110_vvvv ; (Z, S) t = t >> ((UI << 4) | v) (sign bit preserved)
- Addi [t],v 1000_tttt_0000_vvvv ; (C, Z, S, O) mem[t] = mem[t] + ((UI << 4) | v)
- Addci [t],v 1000_tttt_0001_vvvv ; (C, Z, S, O) mem[t] = mem[t] + ((UI << 4) | v) + C
- Subi [t],v 1000_tttt_0010_vvvv ; (C, Z, S, O) mem[t] = mem[t] - ((UI << 4) | v)
- Subbi [t],v 1000_tttt_0011_vvvv ; (C, Z, S, O) mem[t] = mem[t] - ((UI << 4) | v) - !C
- Cmpi [t],v 1000_tttt_0100_vvvv ; (C, Z, S, O) _ = mem[t] - ((UI << 4) | v)
- Negi [t],v 1000_tttt_0101_vvvv ; (C, Z, S, O) mem[t] = -((UI << 4) | v)
- Negbi [t],v 1000_tttt_0110_vvvv ; (C, Z, S, O) mem[t] = -((UI << 4) | v) - !C
- Andi [t],v 1000_tttt_0111_vvvv ; (Z, S) mem[t] = mem[t] & ((UI << 4) | v)
- Biti [t],v 1000_tttt_1000_vvvv ; (Z, S) _ = mem[t] & ((UI << 4) | v)
- Ori [t],v 1000_tttt_1001_vvvv ; (Z, S) mem[t] = mem[t] | ((UI << 4) | v)
- Xori [t],v 1000_tttt_1010_vvvv ; (Z, S) mem[t] = mem[t] ^ ((UI << 4) | v)
- Noti [t],v 1000_tttt_1011_vvvv ; (Z, S) mem[t] = !((UI << 4) | v)
- Shli [t],v 1000_tttt_1100_vvvv ; (Z, S) mem[t] = mem[t] << ((UI << 4) | v)
- Lsri [t],v 1000_tttt_1101_vvvv ; (Z, S) mem[t] = mem[t] >> ((UI << 4) | v)
- Asri [t],v 1000_tttt_1110_vvvv ; (Z, S) mem[t] = mem[t] >> ((UI << 4) | v) (sign bit preserved)
- Addi t,[v] 1001_tttt_0000_vvvv ; (C, Z, S, O) t = t + mem[((UI << 4) | v)]
- Addci t,[v] 1001_tttt_0001_vvvv ; (C, Z, S, O) t = t + mem[((UI << 4) | v)] + C
- Subi t,[v] 1001_tttt_0010_vvvv ; (C, Z, S, O) t = t - mem[((UI << 4) | v)]
- Subbi t,[v] 1001_tttt_0011_vvvv ; (C, Z, S, O) t = t - mem[((UI << 4) | v)] - !C
- Cmpi t,[v] 1001_tttt_0100_vvvv ; (C, Z, S, O) _ = t - mem[((UI << 4) | v)]
- Negi t,[v] 1001_tttt_0101_vvvv ; (C, Z, S, O) t = -mem[((UI << 4) | v)]
- Negbi t,[v] 1001_tttt_0110_vvvv ; (C, Z, S, O) t = -mem[((UI << 4) | v)] - !C
- Andi t,[v] 1001_tttt_0111_vvvv ; (Z, S) t = t & mem[((UI << 4) | v)]
- Biti t,[v] 1001_tttt_1000_vvvv ; (Z, S) _ = t & mem[((UI << 4) | v)]
- Ori t,[v] 1001_tttt_1001_vvvv ; (Z, S) t = t | mem[((UI << 4) | v)]
- Xori t,[v] 1001_tttt_1010_vvvv ; (Z, S) t = t ^ mem[((UI << 4) | v)]
- Noti t,[v] 1001_tttt_1011_vvvv ; (Z, S) t = !mem[((UI << 4) | v)]
- Shli t,[v] 1001_tttt_1100_vvvv ; (Z, S) t = t << mem[((UI << 4) | v)]
- Lsri t,[v] 1001_tttt_1101_vvvv ; (Z, S) t = t >> mem[((UI << 4) | v)]
- Asri t,[v] 1001_tttt_1110_vvvv ; (Z, S) t = t >> mem[((UI << 4) | v)] (sign bit preserved)
- Test [v] 1001_----_1111_vvvv ; (Z, S) _ = mem[((UI << 4) | v)]
- Addi [v],s 1010_ssss_0000_vvvv ; (C, Z, S, O) mem[((UI << 4) | v)] = mem[((UI << 4) | v)] + s
- Addci [v],s 1010_ssss_0001_vvvv ; (C, Z, S, O) mem[((UI << 4) | v)] = mem[((UI << 4) | v)] + s + C
- Subi [v],s 1010_ssss_0010_vvvv ; (C, Z, S, O) mem[((UI << 4) | v)] = mem[((UI << 4) | v)] - s
- Subbi [v],s 1010_ssss_0011_vvvv ; (C, Z, S, O) mem[((UI << 4) | v)] = mem[((UI << 4) | v)] - s - !C
- Cmpi [v],s 1010_ssss_0100_vvvv ; (C, Z, S, O) _ = mem[((UI << 4) | v)] - s
- Negi [v],s 1010_ssss_0101_vvvv ; (C, Z, S, O) mem[((UI << 4) | v)] = -s
- Negbi [v],s 1010_ssss_0110_vvvv ; (C, Z, S, O) mem[((UI << 4) | v)] = -s - !C
- Andi [v],s 1010_ssss_0111_vvvv ; (Z, S) mem[((UI << 4) | v)] = mem[((UI << 4) | v)] & s
- Biti [v],s 1010_ssss_1000_vvvv ; (Z, S) _ = mem[((UI << 4) | v)] & s
- Ori [v],s 1010_ssss_1001_vvvv ; (Z, S) mem[((UI << 4) | v)] = mem[((UI << 4) | v)] | s
- Xori [v],s 1010_ssss_1010_vvvv ; (Z, S) mem[((UI << 4) | v)] = mem[((UI << 4) | v)] ^ s
- Noti [v],s 1010_ssss_1011_vvvv ; (Z, S) mem[((UI << 4) | v)] = !s
- Shli [v],s 1010_ssss_1100_vvvv ; (Z, S) mem[((UI << 4) | v)] = mem[((UI << 4) | v)] << s
- Lsri [v],s 1010_ssss_1101_vvvv ; (Z, S) mem[((UI << 4) | v)] = mem[((UI << 4) | v)] >> s
- Asri [v],s 1010_ssss_1110_vvvv ; (Z, S) mem[((UI << 4) | v)] = mem[((UI << 4) | v)] >> s (sign bit preserved)
- Br.c v 1111_0001_vvvv_vvvv ; if C then pc += v
- Br.z v 1111_0010_vvvv_vvvv ; if Z then pc += v
- Br.s v 1111_0011_vvvv_vvvv ; if S then pc += v
- Br.o v 1111_0100_vvvv_vvvv ; if O then pc += v
- Br.nc v 1111_0101_vvvv_vvvv ; if !C then pc += v
- Br.nz v 1111_0110_vvvv_vvvv ; if !Z then pc += v
- Br.ns v 1111_0111_vvvv_vvvv ; if !S then pc += v
- Br.no v 1111_1000_vvvv_vvvv ; if !O then pc += v
- Br.u.le v 1111_1001_vvvv_vvvv ; if !C || Z then pc pc += v
- Br.u.g v 1111_1010_vvvv_vvvv ; if C && !Z then pc += v
- Br.s.l v 1111_1011_vvvv_vvvv ; if S != O then pc += v
- Br.s.ge v 1111_1100_vvvv_vvvv ; if S == O then pc += v
- Br.s.le v 1111_1101_vvvv_vvvv ; if Z || (S != O) then pc += v
- Br.s.g v 1111_1110_vvvv_vvvv ; if !Z && (S == O) then pc += v
- Bra v 1111_1111_vvvv_vvvv ; pc += v
- Instruction aliases:
- Jp.e r Jp.z r
- Jp.ne r Jp.nz r
- Jp.u.ge r Jp.c r
- Jp.u.l r Jp.nc r
- Jp.e [r] Jp.z [r]
- Jp.ne [r] Jp.nz [r]
- Jp.u.ge [r] Jp.c [r]
- Jp.u.l [r] Jp.nc [r]
- Jpi.e v Jpi.z v
- Jpi.ne v Jpi.nz v
- Jpi.u.ge v Jpi.c v
- Jpi.u.l v Jpi.nc v
- Jpi.e [v] Jpi.z [v]
- Jpi.ne [v] Jpi.nz [v]
- Jpi.u.ge [v] Jpi.c [v]
- Jpi.u.l [v] Jpi.nc [v]
- Br.e v Br.z v
- Br.ne v Br.nz v
- Br.u.ge v Br.c v
- Br.u.l v Br.nc v
- Zero r Xor r, r
- Neg r Neg r, r
- Negb r Negb r, r
- Not r Not r, r
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement