Parallax Propeller 2 Instructions v33 - Rev B/C Silicon
 Share
The version of the browser you are using is no longer supported. Please upgrade to a supported browser.Dismiss

View only
 
 
ABCDEFGHIJKLMNOPQRSTUVWXYZAAABACADAEAFAGAH
1
order
#S = immediate (I=1). S = register.
#D = immediate (L=1). D = register.

- Assembly Syntax -
- Group -- Encoding -- Alias -* Z = (result == 0).
** If #S and cogex, PC += signed(S). If #S and hubex, PC += signed(S*4). If S, PC = register S.

- Description -
Next Inst
Shielded
from
Interrupt
Clock Cycles (8 cogs)

- Cog Exec Mode -
- LUT Exec Mode -
Clock Cycles (8 cogs)
* +1 if crosses hub long

- Hub Exec Mode -
Clock Cycles (16 cogs)

- Cog Exec Mode -
- LUT Exec Mode -
Clock Cyles (16 cogs)
* +1 if crosses hub long

- Hub Exec Mode -
* Data not forwarded.

- Register Write -
- Hub R/W -- Stack R/W -
2
1NOPMiscellaneous0000 0000000 000 000000000 000000000.No operation.2same2same
3
2ROR D,{#}S {WC/WZ/WCZ}Math and LogicEEEE 0000000 CZI DDDDDDDDD SSSSSSSSS.Rotate right. D = [31:0] of ({D[31:0], D[31:0]} >> S[4:0]). C = last bit shifted out if S[4:0] > 0, else D[0]. *2same2sameD
4
3ROL D,{#}S {WC/WZ/WCZ}Math and LogicEEEE 0000001 CZI DDDDDDDDD SSSSSSSSS.Rotate left. D = [63:32] of ({D[31:0], D[31:0]} << S[4:0]). C = last bit shifted out if S[4:0] > 0, else D[31]. *2same2sameD
5
4SHR D,{#}S {WC/WZ/WCZ}Math and LogicEEEE 0000010 CZI DDDDDDDDD SSSSSSSSS.Shift right. D = [31:0] of ({32'b0, D[31:0]} >> S[4:0]). C = last bit shifted out if S[4:0] > 0, else D[0]. *2same2sameD
6
5SHL D,{#}S {WC/WZ/WCZ}Math and LogicEEEE 0000011 CZI DDDDDDDDD SSSSSSSSS.Shift left. D = [63:32] of ({D[31:0], 32'b0} << S[4:0]). C = last bit shifted out if S[4:0] > 0, else D[31]. *2same2sameD
7
6RCR D,{#}S {WC/WZ/WCZ}Math and LogicEEEE 0000100 CZI DDDDDDDDD SSSSSSSSS.Rotate carry right. D = [31:0] of ({{32{C}}, D[31:0]} >> S[4:0]). C = last bit shifted out if S[4:0] > 0, else D[0]. *2same2sameD
8
7RCL D,{#}S {WC/WZ/WCZ}Math and LogicEEEE 0000101 CZI DDDDDDDDD SSSSSSSSS.Rotate carry left. D = [63:32] of ({D[31:0], {32{C}}} << S[4:0]). C = last bit shifted out if S[4:0] > 0, else D[31]. *2same2sameD
9
8SAR D,{#}S {WC/WZ/WCZ}Math and LogicEEEE 0000110 CZI DDDDDDDDD SSSSSSSSS.Shift arithmetic right. D = [31:0] of ({{32{D[31]}}, D[31:0]} >> S[4:0]). C = last bit shifted out if S[4:0] > 0, else D[0]. *2same2sameD
10
9SAL D,{#}S {WC/WZ/WCZ}Math and LogicEEEE 0000111 CZI DDDDDDDDD SSSSSSSSS.Shift arithmetic left. D = [63:32] of ({D[31:0], {32{D[0]}}} << S[4:0]). C = last bit shifted out if S[4:0] > 0, else D[31]. *2same2sameD
11
10ADD D,{#}S {WC/WZ/WCZ}Math and LogicEEEE 0001000 CZI DDDDDDDDD SSSSSSSSS.Add S into D. D = D + S. C = carry of (D + S). *2same2sameD
12
11
ADDX D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0001001 CZI DDDDDDDDD SSSSSSSSS.Add (S + C) into D, extended. D = D + S + C. C = carry of (D + S + C). Z = Z AND (result == 0).2same2sameD
13
12
ADDS D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0001010 CZI DDDDDDDDD SSSSSSSSS.Add S into D, signed. D = D + S. C = correct sign of (D + S). *2same2sameD
14
13
ADDSX D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0001011 CZI DDDDDDDDD SSSSSSSSS.Add (S + C) into D, signed and extended. D = D + S + C. C = correct sign of (D + S + C). Z = Z AND (result == 0).2same2sameD
15
14SUB D,{#}S {WC/WZ/WCZ}Math and LogicEEEE 0001100 CZI DDDDDDDDD SSSSSSSSS.Subtract S from D. D = D - S. C = borrow of (D - S). *2same2sameD
16
15
SUBX D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0001101 CZI DDDDDDDDD SSSSSSSSS.Subtract (S + C) from D, extended. D = D - (S + C). C = borrow of (D - (S + C)). Z = Z AND (result == 0).2same2sameD
17
16
SUBS D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0001110 CZI DDDDDDDDD SSSSSSSSS.Subtract S from D, signed. D = D - S. C = correct sign of (D - S). *2same2sameD
18
17
SUBSX D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0001111 CZI DDDDDDDDD SSSSSSSSS.Subtract (S + C) from D, signed and extended. D = D - (S + C). C = correct sign of (D - (S + C)). Z = Z AND (result == 0).2same2sameD
19
18
CMP D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0010000 CZI DDDDDDDDD SSSSSSSSS.Compare D to S. C = borrow of (D - S). Z = (D == S).2same2same
20
19
CMPX D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0010001 CZI DDDDDDDDD SSSSSSSSS.Compare D to (S + C), extended. C = borrow of (D - (S + C)). Z = Z AND (D == S + C).2same2same
21
20
CMPS D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0010010 CZI DDDDDDDDD SSSSSSSSS.Compare D to S, signed. C = correct sign of (D - S). Z = (D == S).2same2same
22
21
CMPSX D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0010011 CZI DDDDDDDDD SSSSSSSSS.Compare D to (S + C), signed and extended. C = correct sign of (D - (S + C)). Z = Z AND (D == S + C).2same2same
23
22
CMPR D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0010100 CZI DDDDDDDDD SSSSSSSSS.Compare S to D (reverse). C = borrow of (S - D). Z = (D == S).2same2same
24
23
CMPM D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0010101 CZI DDDDDDDDD SSSSSSSSS.Compare D to S, get MSB of difference into C. C = MSB of (D - S). Z = (D == S).2same2same
25
24
SUBR D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0010110 CZI DDDDDDDDD SSSSSSSSS.Subtract D from S (reverse). D = S - D. C = borrow of (S - D). *2same2sameD
26
25
CMPSUB D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0010111 CZI DDDDDDDDD SSSSSSSSS.Compare and subtract S from D if D >= S. If D => S then D = D - S and C = 1, else D same and C = 0. *2same2sameD
27
26FGE D,{#}S {WC/WZ/WCZ}Math and LogicEEEE 0011000 CZI DDDDDDDDD SSSSSSSSS.Force D >= S. If D < S then D = S and C = 1, else D same and C = 0. *2same2sameD
28
27FLE D,{#}S {WC/WZ/WCZ}Math and LogicEEEE 0011001 CZI DDDDDDDDD SSSSSSSSS.Force D <= S. If D > S then D = S and C = 1, else D same and C = 0. *2same2sameD
29
28
FGES D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0011010 CZI DDDDDDDDD SSSSSSSSS.Force D >= S, signed. If D < S then D = S and C = 1, else D same and C = 0. *2same2sameD
30
29FLES D,{#}S {WC/WZ/WCZ}Math and LogicEEEE 0011011 CZI DDDDDDDDD SSSSSSSSS.Force D <= S, signed. If D > S then D = S and C = 1, else D same and C = 0. *2same2sameD
31
30
SUMC D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0011100 CZI DDDDDDDDD SSSSSSSSS.Sum +/-S into D by C. If C = 1 then D = D - S, else D = D + S. C = correct sign of (D +/- S). *2same2sameD
32
31
SUMNC D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0011101 CZI DDDDDDDDD SSSSSSSSS.Sum +/-S into D by !C. If C = 0 then D = D - S, else D = D + S. C = correct sign of (D +/- S). *2same2sameD
33
32
SUMZ D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0011110 CZI DDDDDDDDD SSSSSSSSS.Sum +/-S into D by Z. If Z = 1 then D = D - S, else D = D + S. C = correct sign of (D +/- S). *2same2sameD
34
33
SUMNZ D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0011111 CZI DDDDDDDDD SSSSSSSSS.Sum +/-S into D by !Z. If Z = 0 then D = D - S, else D = D + S. C = correct sign of (D +/- S). *2same2sameD
35
34TESTB D,{#}S WC/WZMath and LogicEEEE 0100000 CZI DDDDDDDDD SSSSSSSSS.Test bit S[4:0] of D, write to C/Z. C/Z = D[S[4:0]].2same2same
36
35TESTBN D,{#}S WC/WZMath and LogicEEEE 0100001 CZI DDDDDDDDD SSSSSSSSS.Test bit S[4:0] of !D, write to C/Z. C/Z = !D[S[4:0]].2same2same
37
36TESTB D,{#}S ANDC/ANDZMath and LogicEEEE 0100010 CZI DDDDDDDDD SSSSSSSSS.Test bit S[4:0] of D, AND into C/Z. C/Z = C/Z AND D[S[4:0]].2same2same
38
37TESTBN D,{#}S ANDC/ANDZMath and LogicEEEE 0100011 CZI DDDDDDDDD SSSSSSSSS.Test bit S[4:0] of !D, AND into C/Z. C/Z = C/Z AND !D[S[4:0]].2same2same
39
38TESTB D,{#}S ORC/ORZMath and LogicEEEE 0100100 CZI DDDDDDDDD SSSSSSSSS.Test bit S[4:0] of D, OR into C/Z. C/Z = C/Z OR D[S[4:0]].2same2same
40
39TESTBN D,{#}S ORC/ORZMath and LogicEEEE 0100101 CZI DDDDDDDDD SSSSSSSSS.Test bit S[4:0] of !D, OR into C/Z. C/Z = C/Z OR !D[S[4:0]].2same2same
41
40TESTB D,{#}S XORC/XORZMath and LogicEEEE 0100110 CZI DDDDDDDDD SSSSSSSSS.Test bit S[4:0] of D, XOR into C/Z. C/Z = C/Z XOR D[S[4:0]].2same2same
42
41TESTBN D,{#}S XORC/XORZMath and LogicEEEE 0100111 CZI DDDDDDDDD SSSSSSSSS.Test bit S[4:0] of !D, XOR into C/Z. C/Z = C/Z XOR !D[S[4:0]].2same2same
43
42BITL D,{#}S {WCZ}Math and LogicEEEE 0100000 CZI DDDDDDDDD SSSSSSSSS.Bits D[S[9:5]+S[4:0]:S[4:0]] = 0. Other bits unaffected. Prior SETQ overrides S[9:5]. C,Z = original D[S[4:0]].2same2sameD
44
43BITH D,{#}S {WCZ}Math and LogicEEEE 0100001 CZI DDDDDDDDD SSSSSSSSS.Bits D[S[9:5]+S[4:0]:S[4:0]] = 1. Other bits unaffected. Prior SETQ overrides S[9:5]. C,Z = original D[S[4:0]].2same2sameD
45
44BITC D,{#}S {WCZ}Math and LogicEEEE 0100010 CZI DDDDDDDDD SSSSSSSSS.Bits D[S[9:5]+S[4:0]:S[4:0]] = C. Other bits unaffected. Prior SETQ overrides S[9:5]. C,Z = original D[S[4:0]].2same2sameD
46
45BITNC D,{#}S {WCZ}Math and LogicEEEE 0100011 CZI DDDDDDDDD SSSSSSSSS.Bits D[S[9:5]+S[4:0]:S[4:0]] = !C. Other bits unaffected. Prior SETQ overrides S[9:5]. C,Z = original D[S[4:0]].2same2sameD
47
46BITZ D,{#}S {WCZ}Math and LogicEEEE 0100100 CZI DDDDDDDDD SSSSSSSSS.Bits D[S[9:5]+S[4:0]:S[4:0]] = Z. Other bits unaffected. Prior SETQ overrides S[9:5]. C,Z = original D[S[4:0]].2same2sameD
48
47BITNZ D,{#}S {WCZ}Math and LogicEEEE 0100101 CZI DDDDDDDDD SSSSSSSSS.Bits D[S[9:5]+S[4:0]:S[4:0]] = !Z. Other bits unaffected. Prior SETQ overrides S[9:5]. C,Z = original D[S[4:0]].2same2sameD
49
48BITRND D,{#}S {WCZ}Math and LogicEEEE 0100110 CZI DDDDDDDDD SSSSSSSSS.Bits D[S[9:5]+S[4:0]:S[4:0]] = RNDs. Other bits unaffected. Prior SETQ overrides S[9:5]. C,Z = original D[S[4:0]].2same2sameD
50
49BITNOT D,{#}S {WCZ}Math and LogicEEEE 0100111 CZI DDDDDDDDD SSSSSSSSS.Toggle bits D[S[9:5]+S[4:0]:S[4:0]]. Other bits unaffected. Prior SETQ overrides S[9:5]. C,Z = original D[S[4:0]].2same2sameD
51
50AND D,{#}S {WC/WZ/WCZ}Math and LogicEEEE 0101000 CZI DDDDDDDDD SSSSSSSSS.AND S into D. D = D & S. C = parity of result. *2same2sameD
52
51
ANDN D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0101001 CZI DDDDDDDDD SSSSSSSSS.AND !S into D. D = D & !S. C = parity of result. *2same2sameD
53
52OR D,{#}S {WC/WZ/WCZ}Math and LogicEEEE 0101010 CZI DDDDDDDDD SSSSSSSSS.OR S into D. D = D | S. C = parity of result. *2same2sameD
54
53XOR D,{#}S {WC/WZ/WCZ}Math and LogicEEEE 0101011 CZI DDDDDDDDD SSSSSSSSS.XOR S into D. D = D ^ S. C = parity of result. *2same2sameD
55
54
MUXC D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0101100 CZI DDDDDDDDD SSSSSSSSS.Mux C into each D bit that is '1' in S. D = (!S & D ) | (S & {32{ C}}). C = parity of result. *2same2sameD
56
55
MUXNC D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0101101 CZI DDDDDDDDD SSSSSSSSS.Mux !C into each D bit that is '1' in S. D = (!S & D ) | (S & {32{!C}}). C = parity of result. *2same2sameD
57
56
MUXZ D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0101110 CZI DDDDDDDDD SSSSSSSSS.Mux Z into each D bit that is '1' in S. D = (!S & D ) | (S & {32{ Z}}). C = parity of result. *2same2sameD
58
57
MUXNZ D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0101111 CZI DDDDDDDDD SSSSSSSSS.Mux !Z into each D bit that is '1' in S. D = (!S & D ) | (S & {32{!Z}}). C = parity of result. *2same2sameD
59
58
MOV D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0110000 CZI DDDDDDDDD SSSSSSSSS.Move S into D. D = S. C = S[31]. *2same2sameD
60
59NOT D,{#}S {WC/WZ/WCZ}Math and LogicEEEE 0110001 CZI DDDDDDDDD SSSSSSSSS.Get !S into D. D = !S. C = !S[31]. *2same2sameD
61
60NOT D {WC/WZ/WCZ}Math and Logic
EEEE 0110001 CZ0 DDDDDDDDD DDDDDDDDD
aliasGet !D into D. D = !D. C = !D[31]. *2same2sameD
62
61ABS D,{#}S {WC/WZ/WCZ}Math and LogicEEEE 0110010 CZI DDDDDDDDD SSSSSSSSS.Get absolute value of S into D. D = ABS(S). C = S[31]. *2same2sameD
63
62ABS D {WC/WZ/WCZ}Math and Logic
EEEE 0110010 CZ0 DDDDDDDDD DDDDDDDDD
aliasGet absolute value of D into D. D = ABS(D). C = D[31]. *2same2sameD
64
63NEG D,{#}S {WC/WZ/WCZ}Math and LogicEEEE 0110011 CZI DDDDDDDDD SSSSSSSSS.Negate S into D. D = -S. C = MSB of result. *2same2sameD
65
64NEG D {WC/WZ/WCZ}Math and Logic
EEEE 0110011 CZ0 DDDDDDDDD DDDDDDDDD
aliasNegate D. D = -D. C = MSB of result. *2same2sameD
66
65
NEGC D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0110100 CZI DDDDDDDDD SSSSSSSSS.Negate S by C into D. If C = 1 then D = -S, else D = S. C = MSB of result. *2same2sameD
67
66NEGC D {WC/WZ/WCZ}Math and Logic
EEEE 0110100 CZ0 DDDDDDDDD DDDDDDDDD
aliasNegate D by C. If C = 1 then D = -D, else D = D. C = MSB of result. *2same2sameD
68
67
NEGNC D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0110101 CZI DDDDDDDDD SSSSSSSSS.Negate S by !C into D. If C = 0 then D = -S, else D = S. C = MSB of result. *2same2sameD
69
68NEGNC D {WC/WZ/WCZ}Math and Logic
EEEE 0110101 CZ0 DDDDDDDDD DDDDDDDDD
aliasNegate D by !C. If C = 0 then D = -D, else D = D. C = MSB of result. *2same2sameD
70
69
NEGZ D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0110110 CZI DDDDDDDDD SSSSSSSSS.Negate S by Z into D. If Z = 1 then D = -S, else D = S. C = MSB of result. *2same2sameD
71
70NEGZ D {WC/WZ/WCZ}Math and Logic
EEEE 0110110 CZ0 DDDDDDDDD DDDDDDDDD
aliasNegate D by Z. If Z = 1 then D = -D, else D = D. C = MSB of result. *2same2sameD
72
71
NEGNZ D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0110111 CZI DDDDDDDDD SSSSSSSSS.Negate S by !Z into D. If Z = 0 then D = -S, else D = S. C = MSB of result. *2same2sameD
73
72NEGNZ D {WC/WZ/WCZ}Math and Logic
EEEE 0110111 CZ0 DDDDDDDDD DDDDDDDDD
aliasNegate D by !Z. If Z = 0 then D = -D, else D = D. C = MSB of result. *2same2sameD
74
73
INCMOD D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0111000 CZI DDDDDDDDD SSSSSSSSS.Increment with modulus. If D = S then D = 0 and C = 1, else D = D + 1 and C = 0. *2same2sameD
75
74
DECMOD D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0111001 CZI DDDDDDDDD SSSSSSSSS.Decrement with modulus. If D = 0 then D = S and C = 1, else D = D - 1 and C = 0. *2same2sameD
76
75
ZEROX D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0111010 CZI DDDDDDDDD SSSSSSSSS.Zero-extend D above bit S[4:0]. C = MSB of result. *2same2sameD
77
76
SIGNX D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0111011 CZI DDDDDDDDD SSSSSSSSS.Sign-extend D from bit S[4:0]. C = MSB of result. *2same2sameD
78
77
ENCOD D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0111100 CZI DDDDDDDDD SSSSSSSSS.Get bit position of top-most '1' in S into D. D = position of top '1' in S (0..31). C = (S != 0). *2same2sameD
79
78ENCOD D {WC/WZ/WCZ}Math and Logic
EEEE 0111100 CZ0 DDDDDDDDD DDDDDDDDD
aliasGet bit position of top-most '1' in D into D. D = position of top '1' in S (0..31). C = (S != 0). *2same2sameD
80
79
ONES D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0111101 CZI DDDDDDDDD SSSSSSSSS.Get number of '1's in S into D. D = number of '1's in S (0..32). C = LSB of result. *2same2sameD
81
80ONES D {WC/WZ/WCZ}Math and Logic
EEEE 0111101 CZ0 DDDDDDDDD DDDDDDDDD
aliasGet number of '1's in D into D. D = number of '1's in S (0..32). C = LSB of result. *2same2sameD
82
81TEST D,{#}S {WC/WZ/WCZ}Math and LogicEEEE 0111110 CZI DDDDDDDDD SSSSSSSSS.Test D with S. C = parity of (D & S). Z = ((D & S) == 0).2same2same
83
82TEST D {WC/WZ/WCZ}Math and Logic
EEEE 0111110 CZ0 DDDDDDDDD DDDDDDDDD
aliasTest D. C = parity of D. Z = (D == 0).2same2same
84
83
TESTN D,{#}S {WC/WZ/WCZ}
Math and LogicEEEE 0111111 CZI DDDDDDDDD SSSSSSSSS.Test D with !S. C = parity of (D & !S). Z = ((D & !S) == 0).2same2same
85
84SETNIB D,{#}S,#NMath and Logic
EEEE 100000N NNI DDDDDDDDD SSSSSSSSS
.Set S[3:0] into nibble N in D, keeping rest of D same.2same2sameD
86
85SETNIB {#}SMath and LogicEEEE 1000000 00I 000000000 SSSSSSSSSaliasSet S[3:0] into nibble established by prior ALTSN instruction.2same2sameD
87
86GETNIB D,{#}S,#NMath and Logic
EEEE 100001N NNI DDDDDDDDD SSSSSSSSS
.Get nibble N of S into D. D = {28'b0, S.NIBBLE[N]).2same2sameD
88
87GETNIB DMath and Logic
EEEE 1000010 000 DDDDDDDDD 000000000
aliasGet nibble established by prior ALTGN instruction into D.2same2sameD
89
88ROLNIB D,{#}S,#NMath and Logic
EEEE 100010N NNI DDDDDDDDD SSSSSSSSS
.Rotate-left nibble N of S into D. D = {D[27:0], S.NIBBLE[N]).2same2sameD
90
89ROLNIB DMath and Logic
EEEE 1000100 000 DDDDDDDDD 000000000
aliasRotate-left nibble established by prior ALTGN instruction into D.2same2sameD
91
90SETBYTE D,{#}S,#NMath and Logic
EEEE 1000110 NNI DDDDDDDDD SSSSSSSSS
.Set S[7:0] into byte N in D, keeping rest of D same.2same2sameD
92
91SETBYTE {#}SMath and LogicEEEE 1000110 00I 000000000 SSSSSSSSSaliasSet S[7:0] into byte established by prior ALTSB instruction.2same2sameD
93
92GETBYTE D,{#}S,#NMath and Logic
EEEE 1000111 NNI DDDDDDDDD SSSSSSSSS
.Get byte N of S into D. D = {24'b0, S.BYTE[N]).2same2sameD
94
93GETBYTE DMath and Logic
EEEE 1000111 000 DDDDDDDDD 000000000
aliasGet byte established by prior ALTGB instruction into D.2same2sameD
95
94ROLBYTE D,{#}S,#NMath and Logic
EEEE 1001000 NNI DDDDDDDDD SSSSSSSSS
.Rotate-left byte N of S into D. D = {D[23:0], S.BYTE[N]).2same2sameD
96
95ROLBYTE DMath and Logic
EEEE 1001000 000 DDDDDDDDD 000000000
aliasRotate-left byte established by prior ALTGB instruction into D.2same2sameD
97
96SETWORD D,{#}S,#NMath and LogicEEEE 1001001 0NI DDDDDDDDD SSSSSSSSS.Set S[15:0] into word N in D, keeping rest of D same.2same2sameD
98
97SETWORD {#}SMath and LogicEEEE 1001001 00I 000000000 SSSSSSSSSaliasSet S[15:0] into word established by prior ALTSW instruction.2same2sameD
99
98GETWORD D,{#}S,#NMath and LogicEEEE 1001001 1NI DDDDDDDDD SSSSSSSSS.Get word N of S into D. D = {16'b0, S.WORD[N]).2same2sameD
100
99GETWORD DMath and Logic
EEEE 1001001 100 DDDDDDDDD 000000000
aliasGet word established by prior ALTGW instruction into D.2same2sameD
Loading...