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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Ubuntu >内容正文

Ubuntu

NASM在Ubuntu上的安装与简单使用

發布時間:2025/3/15 Ubuntu 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 NASM在Ubuntu上的安装与简单使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一 、安裝NASM
1. 下載安裝文件
地址是:http://www.nasm.us/pub/nasm/releasebuilds/2.11.08/

2.解壓(具體命令要根據壓縮包的類型來選用)
3.進入解壓目錄
進入剛解壓的目錄
./configure
make
sudo make install

二、簡單使用NASM

  • 準備好源文件
    假設命名為 c07_mbr.asm(這是《x86匯編語言:從實模式到保護模式》一書的配書代碼),這個程序的功能是計算1+2+3+…+100
  • ;代碼清單7-1;文件名:c07_mbr.asm;文件說明:硬盤主引導扇區代碼;創建日期:2011-4-13 18:02jmp near startmessage db '1+2+3+...+100='start:mov ax,0x7c0 ;設置數據段的段基地址 mov ds,axmov ax,0xb800 ;設置附加段基址到顯示緩沖區mov es,ax;以下顯示字符串 mov si,message mov di,0mov cx,start-message@g:mov al,[si]mov [es:di],alinc dimov byte [es:di],0x07inc diinc siloop @g;以下計算1100的和 xor ax,axmov cx,1@f:add ax,cxinc cxcmp cx,100jle @f;以下計算累加和的每個數位 xor cx,cx ;設置堆棧段的段基地址mov ss,cxmov sp,cxmov bx,10xor cx,cx@d:inc cxxor dx,dxdiv bxor dl,0x30push dxcmp ax,0jne @d;以下顯示各個數位 @a:pop dxmov [es:di],dlinc dimov byte [es:di],0x07inc diloop @ajmp near $ times 510-($-$$) db 0db 0x55,0xaa

    2.用NASM匯編源文件

    nasm -f bin c07_mbr.asm -o c07.bin -l c07.lst

    說明:
    (1)-f bin 指明匯編格式是純二進制文件
    (2)-o c07.bin 指定輸出文件名
    (3)-l c07.lst 表示產生列表文件(在里面,地址和產生的代碼列在左邊,實際的源代碼列在右邊)c07.lst

    3 運行二進制文件
    我們用bochs來運行。(關于Bochs,我的其他文章里已經介紹了使用方法)
    因為我的Bochs的配置文件中寫明了:
    floppya:1_44=a.img,status=inserted
    也就是說啟動文件是軟盤文件a.img
    所以我們把二進制文件寫入軟盤文件a.img(其實在配置文件中修改a.img為c07.bin也是可以的)

    dd if=c07.bin of=a.img

    接下來:
    啟動Bochs
    可以看到

    在第一行顯示了運行結果:)

    (完)

    總結

    以上是生活随笔為你收集整理的NASM在Ubuntu上的安装与简单使用的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。