NASM에서 다른 레이블이 가리키는 메모리 위치에서 몇 바이트만큼 오프셋 된 새 메모리 위치를 가리키는 새 레이블을 만들 수 있습니까?NASM - 기존 레이블에서 새 lablels 만들기
예 : label1이 메모리 위치 0x40h를 가리키는 경우 label1을 사용하여 0x44h를 가리키는 label2를 정의하는 방법이 있습니까?
NASM에서 다른 레이블이 가리키는 메모리 위치에서 몇 바이트만큼 오프셋 된 새 메모리 위치를 가리키는 새 레이블을 만들 수 있습니까?NASM - 기존 레이블에서 새 lablels 만들기
예 : label1이 메모리 위치 0x40h를 가리키는 경우 label1을 사용하여 0x44h를 가리키는 label2를 정의하는 방법이 있습니까?
그것은 당신이 뭘 하려는지 명확하지,하지만 난 당신이 원하는 무슨 생각을 답변 해 드리겠습니다. 라벨 1이 이미
label1: db "Hello World", 10
으로 설정되어 있고 "월드"비트 만 인쇄하려고한다고 가정 해보십시오. 다음과 같이 수행 할 수 있습니다 (인텔 문법 32 비트 리눅스로 보여하지만, 다른 경우에는 작동) :
mov eax, 4
mov ebx, 1
mov ecx, label1
add ecx, 6
mov edx, 6
int 80h
당신이 ECX에 기준을 "LABEL1"를 넣어 그래서 난 그 말이 바랍니다, 그런 다음 오프셋을 상쇄시키려는 양만큼 해당 참조를 늘리십시오.
당신은 라벨처럼 사용할 수있는 상수를 정의 할 수 있습니다 :
label2 equ label1+4