zoukankan      html  css  js  c++  java
  • Linux(Fedora)系统下配制8086汇编环境

    1.到www,nasm.us下载nasm

    2.解压并安装nasm

      #tar -xzvf nasm-2.11.08.tar.gz

      #cd nasm-2.11.08

      #./configure

      #make

      #make install

    3.编写第一个汇编程序

    新建hello.asm文件夹并编写如下代码

    section .data
    msg     db      "Hello, world!",0xA    
    len     equ     $ - msg
    section .text

       global _start

    _start:

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

    section .data
    msg     db      "Hello, world!",0xA    
    len     equ     $ - msg
    section .text

       global _start

    _start:

           mov     eax,4
           mov     ebx,1
           mov     ecx,msg
           mov     edx,len
           int     0x80
           mov     eax,1
           xor     ebx,ebx
           int     0x80
    section .data
    msg     db      "Hello, world!",0xA   
    len     equ     $ - msg
    section .text

       global _start

    _start:

           mov     eax,4
           mov     ebx,1
           mov     ecx,msg
           mov     edx,len
           int     0x80
           mov     eax,1
           xor     ebx,ebx
           int     0x80
    section .data
    msg     db      "Hello, world!",0xA   
    len     equ     $ - msg
    section .text

       global _start

    _start:

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

    section .data
    msg     db      "Hello, world!",0xA    
    len     equ     $ - msg
    section .text

       global _start

    _start:

           mov     eax,4
           mov     ebx,1
           mov     ecx,msg
           mov     edx,len
           int     0x80
           mov     eax,1
           xor     ebx,ebx
           int     0x80
    section .data
    msg     db      "Hello, world!",0xA   
    len     equ     $ - msg
    section .text

       global _start

    _start:

           mov     eax,4
           mov     ebx,1
           mov     ecx,msg
           mov     edx,len
           int     0x80
           mov     eax,1
           xor     ebx,ebx
           int     0x80
    section .data
    msg     db      "Hello, world!",0xA   
    len     equ     $ - msg
    section .text

       global _start

    _start:

           mov     eax,4
           mov     ebx,1
           mov     ecx,msg
           mov     edx,len
           int     0x80
           mov     eax,1
           xor     ebx,ebx
           int     0x80
    section .data
    msg     db      "Hello, world!",0xA   
    len     equ     $ - msg
    section .text

       global _start

    _start:

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

    section .data
    msg     db      "Hello, world!",0xA    
    len     equ     $ - msg
    section .text

       global _start

    _start:

           mov     eax,4
           mov     ebx,1
           mov     ecx,msg
           mov     edx,len
           int     0x80
           mov     eax,1
           xor     ebx,ebx
           int     0x80
    section .data
    msg     db      "Hello, world!",0xA   
    len     equ     $ - msg
    section .text

       global _start

    _start:

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

    4.编译并链接

      #nasm -f elf64 hello.asm (linux是64位的,如果是32,请使用elf32)

      #ld -s -o hello hello.o

      #ls hello

    5.运行程序

      #./hello

  • 相关阅读:
    ueditor精简插件和减少初次加载文件的方法
    The Art of Mocking
    What is a mocking framework? Why is it useful?
    黑盒测试、白盒测试、单元测试、集成测试、系统测试、验收测试的区别与联系
    What is the purpose of mock objects?
    What is Mocking?
    APPENDIX: How to apply the Apache License to your work
    开源 ≠ 免费,开源协议License详解
    如何选择开源许可证?
    五种开源协议的比较(BSD,Apache,GPL,LGPL,MIT) – 整理
  • 原文地址:https://www.cnblogs.com/viplanyue/p/12700598.html
Copyright © 2011-2022 走看看