日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

汇编学习之nasm编译器下载使用

發(fā)布時(shí)間:2024/3/12 编程问答 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 汇编学习之nasm编译器下载使用 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
  • 下載nasm編譯器
    我是在centos7虛擬機(jī)上面進(jìn)行試驗(yàn)學(xué)習(xí),所以對(duì)應(yīng)的結(jié)果和輸入都是命令行的輸入輸出。
  • wget https://www.nasm.us/pub/nasm/releasebuilds/2.14/nasm-2.14.tar.gz

    使用wegt命令下載壓縮包,解壓

    tar -xvzf nasm-2.14.tar.gz

    切換到對(duì)應(yīng)目錄并編譯安裝

    cd nasm-2.14 ./configure make 編譯 make install 安裝

    編譯安裝過程中會(huì)出現(xiàn)很多warning,一開始也是很緊張,不過暫時(shí)還沒發(fā)現(xiàn)有什么不好的現(xiàn)象,主要是說c99不支持之類的警告信息
    2. 測(cè)試nasm編譯器
    直接就當(dāng)前目錄進(jìn)行編程

    vim hello.s

    直接照抄網(wǎng)上大神的一篇hello,world的匯編測(cè)試代碼

    section .data ;section declaration msg db "Hello, world!",0xA ;our dear string len equ $ - msg ;length of our dear string section .text ;section declaration;we must export the entry point to the ELF linker orglobal _start ;loader. They conventionally recognize _start as their;entry point. Use ld -e foo to override the default. _start: ;write our string to stdoutmov eax,4 ;system call number (sys_write)mov ebx,1 ;first argument: file handle (stdout)mov ecx,msg ;second argument: pointer to message to writemov edx,len ;third argument: message lengthint 0x80 ;call kernel ;and exitmov eax,1 ;system call number (sys_exit)xor ebx,ebx ;first syscall argument: exit codeint 0x80 ;call kernel

    編譯

    nasm -f elf64 hello.s -o hello.o

    鏈接

    ld -s hello.o -o hello.out

    最后運(yùn)行hello.out就行,輸出結(jié)果如下:

    [root@jack nasm-2.14]# ./hello.out Hello, world!

    至此nasm編譯器的學(xué)習(xí)和使用算是拉開了序幕。

    補(bǔ):win10下64位系統(tǒng)官網(wǎng)下載
    這個(gè)直接點(diǎn)進(jìn)去下載就可以了,下載后的使用也是黑窗口的樣式的。

    總結(jié)

    以上是生活随笔為你收集整理的汇编学习之nasm编译器下载使用的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。