с 64-битным абсолютным адресом вместо режима адресации ModR / M. Но опять же, не делайте этого, потому что режим RIP-относительной адресации более компактен и столь же эффективен.
тите этот код с моего компьютера Mac, используя команду:
nasm -f macho64 -o max.a maximum.asm
Это код, который я пытаюсь запустить на своем компьютере, который находит наибольшее число в массиве.
section .data
data_items:
dd 3,67,34,222,45,75,54,34,44,33,22,11,66,0
section .text
global _start
_start:
mov edi, 0
mov eax, [data_items + edi*4]
mov ebx, eax
start_loop:
cmp eax, 0
je loop_exit
inc edi
mov eax, [data_items + edi*4]
cmp eax, ebx
jle start_loop
mov ebx, eax
jmp start_loop
loop_exit:
mov eax, 1
int 0x80
Ошибка:
maximum.asm:14: error: Mach-O 64-bit format does not support 32-bit absolute addresses
maximum.asm:21: error: Mach-O 64-bit format does not support 32-bit absolute addresses