當前位置:首頁 » 操作系統 » linux下匯編

linux下匯編

發布時間: 2025-08-26 11:55:52

A. 基於x86平台的windows和linux是否使用統一匯編語言呀

並不統一。Windows下的匯編語法是Intel匯編格式,Linux下的匯編語法是AT&T匯編格式。

Linux是Unix家族的一員,盡管Linux的歷史不長,但與其相關的很多事情都發源於Unix。就Linux所使用的386匯編語言而言,它也是起源於Unix。Unix最初是為PDP-11開發的,曾先後被移植到VAX及68000系列的處理器上,這些處理器上的匯編語言都採用的是AT&T的指令格式。當Unix被移植到i386時,自然也就採用了AT&T的匯編語言格式,而不是Intel的格式。盡管這兩種匯編語言在語法上有一定的差異,但所基於的硬體知識是相同的。

在Intel的語法中,寄存器和和立即數都沒有前綴。但是在AT&T中,寄存器前冠以「%」,而立即數前冠以「$」。在Intel的語法中,十六進制和二進制立即數後綴分別冠以「h」和「b」,而在AT&T中,十六進制立即數前冠以「0x」。

Intel語法
mov eax,8
mov ebx,0ffffh
movl $8,%eax
movl $0xffff,%ebx

AT&T語法
int 80h
int $0x80

操作數的方向

Intel與AT&T操作數的方向正好相反。在Intel語法中,第一個操作數是目的操作數,第二個操作數源操作數。而在AT&T中,第一個數是源操作數,第二個數是目的操作數。
例如:在Intel中, mov eax,[ecx]
在AT&T中,movl (%ecx),%eax

熱點內容
java返回this 發布:2025-10-20 08:28:16 瀏覽:585
製作腳本網站 發布:2025-10-20 08:17:34 瀏覽:881
python中的init方法 發布:2025-10-20 08:17:33 瀏覽:574
圖案密碼什麼意思 發布:2025-10-20 08:16:56 瀏覽:761
怎麼清理微信視頻緩存 發布:2025-10-20 08:12:37 瀏覽:676
c語言編譯器怎麼看執行過程 發布:2025-10-20 08:00:32 瀏覽:1005
郵箱如何填寫發信伺服器 發布:2025-10-20 07:45:27 瀏覽:249
shell腳本入門案例 發布:2025-10-20 07:44:45 瀏覽:108
怎麼上傳照片瀏覽上傳 發布:2025-10-20 07:44:03 瀏覽:798
python股票數據獲取 發布:2025-10-20 07:39:44 瀏覽:705