标题:Linux汇编中把一个寄存器中的值打印到显示器上,用什么命令?
只看楼主
deanli
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2007-12-25
 问题点数:0 回复次数:0 
Linux汇编中把一个寄存器中的值打印到显示器上,用什么命令?
Linux汇编中把一个寄存器中的值打印到显示器上,用什么命令?
下面是helloworld程序,但eax=4, int 80h似乎只能打印字符串。我想打印ebx寄存器中的内容,该怎么办?应该怎样修改代码?

===================================
section .data
    hello:     db 'Hello world!',10    ; 'Hello world!' plus a linefeed character
    helloLen:  equ $-hello             ; Length of the 'Hello world!' string
                                       ; (I'll explain soon)

section .text
    global _start

_start:
    mov eax,4            ; The system call for write (sys_write)
    mov ebx,1            ; File descriptor 1 - standard output
    mov ecx,hello        ; Put the offset of hello in ecx
    mov edx,helloLen     ; helloLen is a constant, so we don't need to say
                         ;  mov edx,[helloLen] to get it's actual value
    int 80h              ; Call the kernel

    mov eax,1            ; The system call for exit (sys_exit)
    mov ebx,0            ; Exit with return code of 0 (no error)
    int 80h
===========================================
搜索更多相关主题的帖子: Linux 寄存器 汇编 显示器 命令 
2007-12-28 09:52



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-194775-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.128978 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved