小编san*_*216的帖子

x86程序集,没有遵循小字节序(或者是吗?)(Linux)

我是汇编语言编程的新手,我编写了一个小程序,使用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 …

linux x86 assembly endianness

4
推荐指数
1
解决办法
1451
查看次数

标签 统计

assembly ×1

endianness ×1

linux ×1

x86 ×1