Epson CMOS 32-Bit Single Chip Microcomputer S1C33L03 Uživatelský manuál Strana 125

  • Stažení
  • Přidat do mých příruček
  • Tisk
  • Strana
    / 181
  • Tabulka s obsahem
  • KNIHY
  • Hodnocené. / 5. Na základě hodnocení zákazníků
Zobrazit stránku 124
7 DETAILS OF INSTRUCTIONS
S1C33 FAMILY C33 PE CORE MANUAL
EPSON
117
ld.uh %rd, [%sp + imm6]
Function
Unsigned halfword data transfer
Standard) rd(15:0)
H[sp + imm6 × 2], rd(31:16) 0
Extension 1) rd(15:0)
H[sp + imm19], rd(31:16) 0
Extension 2) rd(15:0)
H[sp + imm32], rd(31:16) 0
Code
15 12 11 10 9 4 3 0
0 1 0 0 1 1
imm6 r d
0x4C__
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Flag
IE C V Z N
|
|
|
|
Mode
Src: Register indirect with displacement
Dst: Register direct
%rd = %r0 to %r15
CLK
Two cycles
Description
(1) Standard
ld.uh
%rd,[%sp + imm6] ; memory address = sp + imm6 × 2
The halfword data in the specified memory location is transferred to the rd register after being
zero-extended to 32 bits. The content of the current SP with twice the 6-bit immediate
imm6
added as displacement comprises the memory address to be accessed. The least significant bit
of the displacement is always 0.
(2) Extension 1
ext imm13 ; = imm19(18:6)
ld.uh
%rd,[%sp + imm6] ; memory address = sp + imm19,
;
imm6 = imm19(5:0)
The ext instruction extends the displacement to a 19-bit quantity. As a result, the content of the
SP with the 19-bit immediate imm19 added comprises the memory address, the halfword data in
which is transferred to the rd register. Make sure the
imm6 specified here resides on a halfword
boundary (least significant bit = 0).
(3) Extension 2
ext
imm13 ; = imm32(31:19)
ext
imm13 ; = imm32(18:6)
ld.uh
%rd,[%sp + imm6] ; memory address = sp + imm32,
;
imm6 = imm32(5:0)
The two
ext instructions extend the displacement to a 32-bit quantity. As a result, the content
of the SP with the 32-bit immediate
imm32 added comprises the memory address, the halfword
data in which is transferred to the rd register. Make sure the
imm6 specified here resides on a
halfword boundary (least significant bit = 0).
Example
ext 0x1
ld.uh %r0,[%sp + 0x2] ; r0
[sp + 0x42] zero-extended
Zobrazit stránku 124
1 2 ... 120 121 122 123 124 125 126 127 128 129 130 ... 180 181

Komentáře k této Příručce

Žádné komentáře