我是汇编语言编程的新手,我编写了一个小程序,使用sys_write系统调用来打印整数.这是我的代码:
section .data
N: dw 216
chr: dw ,0,0,0,0x0a
section .bss
section .text
global _start
_start:
xor ax, ax
mov ax, word [N]
mov cx, 10
mov ebx,4
shift_while: div cx
add dx, 0x0030
mov word [chr+ebx],dx
sub ebx, 2
xor dx, dx
cmp ax, 0
jne shift_while
call printchar
exit: mov eax, 1
mov ebx, 0
int 80h
printchar: pushad
mov eax, 4
mov ebx, 1
mov ecx, chr
mov edx, 8
int 80h
popad
ret
Run Code Online (Sandbox Code Playgroud)
我有硬编码216,要打印的数字,我得到正确的输出.然而,我所困惑的是"mov word [chr …