码迷,mamicode.com
首页 > 系统相关 > 详细

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

时间:2014-07-08 23:40:57      阅读:268      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   color   使用   os   

原文链接:linux简单之美(三)

 

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

 

 1 section .data
 2     ft db "now is X",10
 3 
 4 section .text
 5 global _start
 6 
 7 _start:
 8     mov edi,10
 9 again:
10     dec edi
11     mov eax,edi
12     add eax,0x30
13     mov byte [ft+7],al
14 
15     mov eax,4
16     mov ebx,1
17     mov ecx,ft
18     mov edx,9
19     int 0x80
20 
21     mov eax,162
22     push 0
23     push 1
24     mov ebx,esp
25     mov ecx,0
26     int 0x80
27     
28     cmp edi,0
29     jnz again
30     
31     mov eax,4
32     mov ebx,1
33     mov ecx,msg
34     mov edx,15
35     int 0x80
36     
37     mov eax,1
38     mov ebx,0
39     int 0x80
40     
41 msg:
42  db "happy xxx day!",10

编译链接命令如下:

nasm -f elf main.asm

ld -m elf_i386 -o main main.o

在代码中延时使用的是nanosleep,其他和第一篇一致,只不过做了一个bin->ascii的小转换.

[原创]linux简单之美(三),布布扣,bubuko.com

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

标签:style   blog   http   color   使用   os   

原文地址:http://www.cnblogs.com/hopy/p/3830291.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!