我的第乙個匯程式設計序 Hello,World

2021-05-23 16:44:09 字數 806 閱讀 7912

作為乙個程式設計師,我想起碼要精通3們語言:c, c++, 彙編!今天我開始了我的奇妙的彙編世界。。。。。

我用的是gnu  assembler(gas).

現用vim建立乙個hello.s檔案:

[root@localhost ~]# vim hello.s

回車後,編寫彙編**如下:

1 .data

2     msg : .string "hello, world!/n"

3     len = . -msg

4 .text

5 .global _start

6 7 _start:

8     movl $len, %edx

9     movl $msg, %ecx

10     movl $1, %ebx

11     movl $4, %eax

12     int  $0x80

13 14     movl $0, %ebx

15     movl $1, %eax

16     int  $0x80

哈哈。。乙個彙編**就這麼搞定了(真長!要是用它來寫個作業系統估計要繞地球好多圈吧!)

下面開始編譯:

[root@localhost ~]# as hello.s -o hello.o

[root@localhost ~]# ld -s -o hello hello.o

ok!在當前目錄下就產生了乙個hello可執行檔案。

執行:[root@localhost ~]# ./hello

hello, world!

我的第乙個匯程式設計序的問題

題目是 輸入乙個字串,統計輸入的字串中字母 數字以及其他字元各有多少個。invalid keyboard code specified link warning l4021 no stack segment link warning l2029 unresolved externals readhe...

第乙個匯程式設計序hello world

程式原始碼如下 assume cs code,ds data 定義 段和資料段框架 data segment 資料段 msg db hello world 定義字串 data ends code segment 段 start mov ax,data mov ds,ax 資料段初始化 mov bx,...

01 第乙個匯程式設計序

在閱讀 x86組合語言 從實模式到保護模式 這本書的時候,從b站上看到 教程,使用虛擬機器然後將彙編檔案寫入磁碟0面0扇區,然後啟動,在螢幕輸出字元,這個程式本身就很簡單,之前學習過王爽的彙編,知道視訊記憶體位置08b00h,字低8位是ascii編碼,高8位是字元的顏色 但是在看 的 發現不同之處 ...