汇编-8086 Hello World

  • 利用栈两个值交换
mov ax, 1000h
mov bx, 1001h

push ax
push bx

pop ax
pop bx
  • 一个完整的程序
assume cs:code
 
:代码段
code segment
     mov ax, 1000h
     mov bx, 2000h
     mov cx, 1000h
     mov ds, cx
     mov [0], ax
     mov [1], bx
            
     :正常退出
     mov ax, 4c00h
     :中断
     int 21h
code ends
end

编译器只关注ax高位4c

mov ax, 4c00h == mov ah, 4ch 
  • 常见中断
    • int 10h用户执行BIOS中断
    • int 3h断电中端
    • int 21h用户执行DOS程序中断
  • Hello World
assume cs:code, ds:data   

:数据段   
data segment
   
data ends     
   
:代码段
code segment
   :$结束
   db "a-Hello World!$"  
   db "13213213$"   
:程序执行入口
start:
   :将代码端关联
   mov ax, data 
   mov ds, ax   
   
   :从哪里开始打印
   mov dx, 0h      
   :打印字符串
   mov ah, 9h
   int 21h 
   
   :退出程序
   mov ax, 4c00h
   int 21h
   
code ends

end start

你可能感兴趣的:(汇编-8086 Hello World)