Powered By Blogger

Thứ Sáu, 20 tháng 7, 2012

bài tập hợp ngữ


1.nhập tên và in ngược tên
.model small
.stack 64 
.data 
  msg db 10,13, "moi ban nhap ho ten:$" 
  msg1 db 10,13, "ho ten ban la :$"
.code 
begin:
 mov ax,@data
 mov ds,ax
 mov ah,09h
 lea dx,msg
 int 21h 
 xor cx,cx
 nhap:
 mov ah,01h
 int 21h 
 cmp al,0dh

 jz inra
 push ax;
 inc cx     
 jmp nhap
 inra:
     mov ah,09h  
    lea dx,msg1
    int 21h
 innua:
   mov ah,02h
   pop dx
   int 21h
   loop innua 
   mov ah,4ch
   int 21h
 end begin  
2.in hoa kí tự

.MODEL SMALL
.STACK 64
.DATA                 
tbao1 DB 10,13, 'nhap ki tu thuong:$'  
tbao2 DB 10,13,'ki tu duoc in hoa  :'  

hoa DB ?,'$' 

.CODE
begin:
MOV AX,@DATA ;'bat buoc '   
MOV DS,AX

LEA DX,tbao1 ;'goi tbao 1'
MOV AH,09h 
INT 21H 

MOV AH,01h  ;'doc 1 ki tu nhap tu ban phim'
INT 21H
SUB AL,20h;'hoac 32'in hoa
MOV hoa,AL  ;'ga'n al cho hoa ' 

LEA DX, tbao2  ;'goi tbao 2'
MOV AH,09h        
INT 21H          



MOV AH,4CH   ;ve dos'
INT 21H
END begin
3.nhập chuỗi kí tự xuấtt chuỗi đó ra

.model small
.stack 64                      
.data 
      nhap db "moi ban input:$"
      bao db 10,13,"chuoi vua nhap:$"
      chuoi db 30 dup('$')  
.code 
begin:
      mov ax,@data
      mov ds,ax
      lea dx,nhap  ;'goi nhap'
      mov ah,09h
      int 21h
      mov cx,30    ;'lap 30 lan'
      mov si,0 ;'gan ofs cho si'
lap:
     mov ah,01h    ;'luu vao al'
     int 21h
     mov chuoi[si],al
     inc si           ;luu vao si'
     cmp al,0dh       ;'neu nhap enter thi ket thuc'
 loopne lap
     mov ah,09h
     lea dx,bao       ;'goi baola chuoi vua nhap'
     int 21h
     mov ah,09h
     lea dx,chuoi
     int 21h
     mov ah,4ch      ;'ve dos'
     int 21h
end begin       
4.nhập chuỗi kết thúc bằng phím enter  

.model small
.stack 64                      
.data 
      nhap db "moi ban input:$"
      bao db 10,13,"chuoi vua nhap:$"
      chuoi db 30 dup('$')  
.code 
begin:
      mov ax,@data
      mov ds,ax
      lea dx,nhap  ;'goi nhap'
      mov ah,09h
      int 21h
      mov cx,30    ;'lap 30 lan'
      mov si,0 ;'gan ofs cho si'
lap:
     mov ah,01h    ;'luu vao al'
     int 21h
     mov chuoi[si],al
     inc si           ;luu vao si'
     cmp al,0dh       ;'neu nhap enter thi ket thuc'
 loopne lap
     mov ah,09h
     lea dx,bao       ;'goi baola chuoi vua nhap'
     int 21h
     mov ah,09h
     lea dx,chuoi
     int 21h
     mov ah,4ch      ;'ve dos'
     int 21h
end begin