Не могу вывести символ на экран в 64-битном режиме:
Код: Выделить всё
mov al, 10 ;Символ
sub rsp, 2 ;Под память
mov rdi, rsp
mov [rdi], al ;Преносим нужный символ
mov rax, 4 ;Функция write
mov rbx, 1 ;stdout
mov rcx, rdi ;Заносим адрес с символом
mov rdx, 1 ;Кол-во символов в строке, у нас 1
int 0x80
add rsp, 2Причем в 32-битном режиме все нормально работает(ну соотвественно когда меняем все 64-битные регистры, на 32-битные и собираем под 32-bit).