我和汇编的那点事-hello world

来源:互联网 发布:excel表格怎么合计数据 编辑:程序博客网 时间:2024/05/04 12:35

第一个程序-Hello World

        按照国际惯例,第一个程序当然是hello world开始。
nasm输出“hello world”字符串,也许有N种方法,但是我们在linux平台下,只需要一种方法就OK了,那就是系统调用。
        N中方法中的一些: BIOS功能调用,显存地址(A0000-BFFFF)【参考《linux内核完全剖析》0.12的25页】,还有另一种是利用栈.
      因为很多的汇编程序书籍开篇就一大堆的寄存器,操作系统原理让初学者很苦恼,为了减少这些烦恼,我们用到那里才学习那里,项目式的学习.
      下面是系统调用的下载地址:
      linux系统调用
      我们需要接触的寄存器也就那几个:
      eax 系统调用号.  
      EBX 第  1  个参数;
      ECX 第  2  个参数.
      EDX第  3   个参数.
      ESI第   4   个参数.
      EDI第   5   个参数.
     
[section .data]  hello  db "hello, world!",0x0a  STRLEN equ $ - hello[section .text]  global _start  _start:     mov ebx, 1     mov ecx, hello     mov edx, STRLEN     mov eax, 4     int 0x80     mov ebx, 0     mov eax, 1     int 0x80


原创粉丝点击