lmw 또는 lm(Load Multiple Word) 명령어

용도

지정된 위치의 연속된 단어를 둘 이상의 범용 레지스터에 로드합니다.

구문

비트
0 - 5 46
6 - 10 RT
11 - 15 RA
16 - 31 D
PowerPC® 
lmw RT, D( RA)
POWER® 제품군
LM RT, D( RA)

설명

Lmwlm 명령은 계산된 유효 주소(EA)에서 시작하여 GPR RT에서 시작하여 모든 GPR을 채우는 여러 범용 레지스터(GPR)에 N개의 연속된 단어를 로드합니다(GPR 31까지). N은 연속 레지스터에 배치되는 총 연속 단어 수인 32-RT 필드와 같습니다.

GPR RA가 0이 아닌 경우 EA는 GPR RA와 D의 내용을 합한 값이며, GPR RA가 0이면 EA는 D입니다.

PowerPC® 명령어 lmw를 사용할 때는 다음 사항을 고려하세요:

  • GPR RA 또는 GPR RB가 로드할 레지스터 범위에 있거나 RT = RA = 0인 경우, 결과는 경계가 정의되지 않습니다.
  • EA는 4의 배수여야 합니다. 그렇지 않은 경우 시스템 정렬 오류 처리기가 호출되거나 결과가 정의되지 않을 수 있습니다.

POWER® 제품군 명령어 lm의 경우, GPR RA가 0이 아니고 GPR RA가 로드할 범위에 있는 경우 GPR RA에 기록되지 않습니다. 정상적으로 RA에 기록되었을 데이터는 삭제되고 작업은 정상적으로 계속됩니다.

Lmwlm 명령어는 하나의 구문을 가지며 고정 소수점 예외 레지스터 또는 조건 레지스터 필드 0에 영향을 주지 않습니다.

참고: 데이터 저장소 인터럽트로 인해 lmwlm 명령어가 중단될 수 있습니다. 이러한 인터럽트가 발생하면 인스트럭션을 처음부터 다시 시작해야 합니다.

매개변수

항목 설명
RT 작동을 위한 시작 대상 범용 레지스터를 지정합니다.
d EA 계산을 위해 32비트로 확장된 16비트 부호 2의 보수 정수 부호를 지정합니다
RA EA 계산을 위한 소스 범용 레지스터를 지정합니다.

다음 코드는 GPR 29 및 GPR 31에 데이터를 로드합니다:


.csect data[rw]
.long 0x8971
.long -1
.long 0x7ffe c100
# Assume GPR 30 contains the address of csect data[rw].
.csect text[pr]
lmw 29,0(30)
# GPR 29 now contains 0x0000 8971.
# GPR 30 now contains the address of csect data[rw].
# GPR 31 now contains 0x7ffe c100.