您的位置:首页 > 运维架构 > Linux

[原创]linux简单之美(三)

2014-07-07 19:15 134 查看
原文链接:linux简单之美(三)

在linux简单之美(二)中我们尝试使用了C库的函数完成功能,那么能不能用syscall方式来搞呢?显然可以!

section .data
ft db "now is X",10

section .text
global _start

_start:
mov edi,10
again:
dec edi
mov eax,edi
add eax,0x30
mov byte [ft+7],al

mov eax,4
mov ebx,1
mov ecx,ft
mov edx,9
int 0x80

mov eax,162
push 0
push 1
mov ebx,esp
mov ecx,0
int 0x80

cmp edi,0
jnz again

mov eax,4
mov ebx,1
mov ecx,msg
mov edx,15
int 0x80

mov eax,1
mov ebx,0
int 0x80

msg:
db "happy xxx day!",10


编译链接命令如下:

nasm -f elf main.asm

ld -m elf_i386 -o main main.o

在代码中延时使用的是nanosleep,其他和第一篇一致,只不过做了一个bin->ascii的小转换.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: