7
DETAILS OF INSTRUCTIONS
68
EPSON
S1C33 FAMILY C33 PE CORE MANUAL
bnot [
%rb
],
imm3
Function
Bit negation
Standard)
B[
rb
](
imm3
)
←
!B[
rb
](
imm3
)
Extension
1
) B[
rb
+
imm13
](
imm3
)
←
!B[
rb
+
imm13
](
imm3
)
Extension
2
) B[
rb
+
imm26
](
imm3
)
←
!B[
rb
+
imm26
](
imm3
)
Code
15
12
11
8
7
4
3
2
0
1
0
1
1
0
1
0
0
r b
0
imm3
0xB4__
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Flag
IE C V Z N
– – – – –
|
|
|
|
Mode
Src: Immediate data (unsigned)
Dst: Register indirect
%rb
=
%r0
to
%r15
CLK
Three cycles (four cycles when
ext
is used)
Description
(
1
) Standard
bnot [
%rb
],
imm3
; B[
rb
](
imm3
)
←
!B[
rb
](
imm3
)
Reverses a data bit of the byte data in the address specified with the
rb
register. The
3
-bit
immediate
imm3
specifies the bit number to be reversed (
7
–
0
).
(
2
) Extension
1
ext
imm13
bnot [
%rb
],
imm3
; B[
rb
+
imm13
](
imm3
)
←
!B[
rb
+
imm13
](
imm3
)
The
e x t
instruction changes the addressing mode to register indirect addressing with
displacement. The extended instruction reverses the data bit specified with the
imm3
in the
address specified by adding the
13
-bit immediate
imm13
to the contents of the
rb
register. It
does not change the contents of the
rb
register.
(
3
) Extension
2
ext
imm13
; =
imm26
(25:13)
ext
imm13
; =
imm26
(12:0)
bnot [
%rb
],
imm3
; B[
rb
+
imm26
](
imm3
)
←
!B[
rb
+
imm26
](
imm3
)
The
e x t
instructions change the addressing mode to register indirect addressing with
displacement. The extended instruction reverses the data bit specified with the
imm3
in the
address specified by adding the
26
-bit immediate
imm26
to the contents of the
rb
register. It
does not change the contents of the
rb
register.
Example
(
1
)
ld.w %r0,[%sp+0x10] ; Sets the memory address to be accessed
; to the R0 register.
bnot [%r0],0x0
; Reverses Bit 0 of data in the specified
; address.
(
2
)
ext 0x1
bnot [%r0],0x7
; Reverses Bit 7 of data in the following
; address.