BÀI TẬP
Viết chương trình thực hiện chức năng sau:
- Nhấn Ctrl + Shift xuất chuỗi "Ctrl + Shift"
- Nhấn Ctrl + Alt xuất chuỗi "Ctrl + Alt"
- Nhấn Ctrl + Alt + Shift xuất chuỗi "Ctrl + Alt + Shift"
- Nhấn ESC thoát khỏi chương trình trở về DOS.

CHƯƠNG TRÌNH MẪU

Code:

.Model Small
.Stack
.Data
   s1 db 10,13,"Ctrl + Alt$"
   s2 db 10,13,"Ctrl + Shift$"
   s3 db 10,13,"Ctrl + Alt + Shift$"   
.Code
Print Macro t
      lea dx,t
      mov ah,9
      int 21h
   EndM
Begin:
   Mov ax,@data
   Mov ds,ax
   Lap:
      Mov ah,2
      int 16h
      and al,00001111b
      cmp al,12
      je C_A
      cmp al,5
      je C_S
      cmp al,6
      je C_S
      cmp al,13
      je C_A_S
      cmp al,14
      je C_A_S
      
      Mov ah,1
      int 16h
      jz Lap
      
      Mov ah,0
      int 16h
      cmp al,1bh
      je Exit
      jmp Lap
   C_A:
      Print s1
      call Delay
      jmp Lap
   C_S:
      Print s2
      call Delay
      jmp Lap
   C_A_S:
      Print s3
      call Delay
      jmp Lap
   Exit:
      Mov ah,4ch
      int 21h
  Delay Proc
            Push cx
            Mov cx,0ffffh
            for1:
            Push cx
                        Mov cx,05ffh
                  for2:
                        loop for2       
            Pop cx
            Loop for1
            Pop cx
            Ret
  Delay EndP
End Begin