;這個是8086的寫法data segment ;這裡定義一個數據段tab db "hello world$" ;這裡用記憶體存放位元組資料 "hellow world!",$用來判斷字串是否輸出完畢data ends ;資料段的結束標誌code segment ;這裡定義了一個程式碼段assume cs:code, ds:data ;這裡把程式中定義的段與對應的段暫存器關聯起來start: ;這裡是一個標號,根據end後面的標號判斷這裡是程式的開始位置 mov ax,data mov ds,ax ;這裡把資料段的地址放到資料段暫存器ds中 lea dx,tab ;dx中放將要顯示資料的偏移地址 mov ah,9h int 21h ;呼叫21號中斷的9號功能來顯示字串 mov ah,4ch int 21h ;程式返回 code ends ;程式碼段的結束語 end start ;定義程式從哪個標號處開始執行;==========================================================;這裡的是win32的彙編寫的.386 ;這裡定義了使用的指令集是80386的 .model flat,stdcall ;定義記憶體模式和呼叫的方式(堆疊平衡) option casemap:none ;定義對大小寫是否敏感;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>;Include 檔案定義;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>include windows.incinclude user32.incincludelib user32.libinclude kernel32.incincludelib kernel32.lib ;這裡引用了一些標頭檔案來說明將要用到的api函式;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>;資料段;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> .dataszCaption db "A MessageBox !",0szText db "Hello World !",0 ;定義資料段,上面的是標題,這裡的是顯示的內容;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>;程式碼段;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> .code start: invoke MessageBox,NULL,offset szText,offset szCaption,MB_OK;呼叫messageBox函式來顯示字串 invoke ExitProcess,NULL;呼叫函式來結束這個程式的程序;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> end start ;定義程式從哪裡開始執行
;這個是8086的寫法data segment ;這裡定義一個數據段tab db "hello world$" ;這裡用記憶體存放位元組資料 "hellow world!",$用來判斷字串是否輸出完畢data ends ;資料段的結束標誌code segment ;這裡定義了一個程式碼段assume cs:code, ds:data ;這裡把程式中定義的段與對應的段暫存器關聯起來start: ;這裡是一個標號,根據end後面的標號判斷這裡是程式的開始位置 mov ax,data mov ds,ax ;這裡把資料段的地址放到資料段暫存器ds中 lea dx,tab ;dx中放將要顯示資料的偏移地址 mov ah,9h int 21h ;呼叫21號中斷的9號功能來顯示字串 mov ah,4ch int 21h ;程式返回 code ends ;程式碼段的結束語 end start ;定義程式從哪個標號處開始執行;==========================================================;這裡的是win32的彙編寫的.386 ;這裡定義了使用的指令集是80386的 .model flat,stdcall ;定義記憶體模式和呼叫的方式(堆疊平衡) option casemap:none ;定義對大小寫是否敏感;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>;Include 檔案定義;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>include windows.incinclude user32.incincludelib user32.libinclude kernel32.incincludelib kernel32.lib ;這裡引用了一些標頭檔案來說明將要用到的api函式;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>;資料段;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> .dataszCaption db "A MessageBox !",0szText db "Hello World !",0 ;定義資料段,上面的是標題,這裡的是顯示的內容;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>;程式碼段;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> .code start: invoke MessageBox,NULL,offset szText,offset szCaption,MB_OK;呼叫messageBox函式來顯示字串 invoke ExitProcess,NULL;呼叫函式來結束這個程式的程序;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> end start ;定義程式從哪裡開始執行