Я использую Windows 7 для изучения ассемблерного языка. Я использую NASM для создания объектных файлов и mingw для создания исполняемых файлов.не может запустить исполняемый файл, сделанный nasm в Windows 7
Я использую следующие команды для компиляции и запуска исполняемых файлов
del hello.o
del hello.exe
nasm -f elf hello.asm
ld hello.o -o hello.exe
hello
при запуске файла Hello.exe, сообщение об ошибке с указанием «hello.exe имеет купировались работает»
в то время как с помощью следующую команду
nasm -f bin hello.asm -o program.exe
я получил сообщение об ошибке, показанное ниже
мой код программы
global _start ; global entry point export for ld
section .text
_start:
; sys_write(stdout, message, length)
mov eax, 4 ; sys_write syscall
mov ebx, 1 ; stdout
mov ecx, message ; message address
mov edx, length ; message string length
int 80h
; sys_exit(return_code)
mov eax, 1 ; sys_exit syscall
mov ebx, 0 ; return 0 (success)
int 80h
section .data
message: db 'Hello, world!',0x0A ; message and newline
length: equ $-message ; NASM definition pseudo-instruction
Покажите нам код. – paxdiablo
мой тип системы: 32bit os –