Trnh Công Sơn
Bài t p th c hành Assembler 6
Bài 6.1. Vi t CT nh p vào 1 ký t , xu t ra ký t đóế
Ví d :
Moi ban nhap 1 ky tu: b
Ky tu v a nh p: b
Bài 6.2. Vi t ch ng trình xu t ra màn hình m t s dòng.ế ươ
Ví d :
De chay duoc 1 CT hop ngu ban can thuc hien cac buoc sau:
Dich file ASM thanh file OBJ
Lien ket file OBJ thanh file EXE
Chay file EXE
Bài 6.3. Vi t CT nh p vào 1 ký t , xu t ra ký t li n tr c và li n sau.ế ướ
Ví d :
Moi ban nhap 1 ky tu: b
Ky tu lien truoc: a
Ky tu lien sau: c
Bài 6.4. Vi t CT nh p vào 1 ký t th ng. In ra ký t Hoaế ườ
Ví d :
Moi ban nhap 1 ky tu: b
Ky tu Hoa: B
Bài 6.5. Vi t CT nh p vào 1 ký t hoa. In ra ký t th ngế ườ
Ví d :
Moi ban nhap 1 ky tu: B
Ky tu th ng: bườ
Bài 6.6. Vi t ch ng trình nh p vào 2 s nguyên d ng x1, x2 (1 ế ươ ươ x2 < x1 < 9). Xu t ra
k t qu các phép tính: x1-1, x1 +2, x1+x2, x1-x2ế
Ví d :
x1 = 5
x2 = 3
x1 – 1 = 4
x1 + 1 = 6
x1 + x2 = 8
x1 – x2 = 7
Bài 6.1. Vi t CT nh p vào 1 ký t , xu t ra ký t đóế
Ví d :
Moi ban nhap 1 ky tu: b
Ky tu v a nh p: b
===================== Gi i 6.1: ========================
.model small
.stack 100h
.data
Msg1 DB 9,10,13,"- Moi ban nhap 1 ky tu:$"
Msg2 DB 9,10,13,"- Ky tu vua nhap:$"
b DB ?
K44dvt01
Trnh Công Sơn
.code
mov AX,@data
mov DS,AX
mov DX,OFFSET Msg1
mov AH, 9
int 21h
mov AH,1
int 21h
mov b,AL
mov DX,OFFSET Msg2
mov AH, 9
int 21h
mov DL,b
mov AH,2
int 21h
mov AH,4Ch
int 21h
end
===================== END 6.1 ========================
Bài 6.2. Vi t ch ng trình xu t ra màn hình m t s dòng.ế ươ
Ví d :
De chay duoc 1 CT hop ngu ban can thuc hien cac buoc sau:
Dich file ASM thanh file OBJ
Lien ket file OBJ thanh file EXE
Chay file EXE
===================== Gi i 6.2: ========================
.model small
.stack 100h
.data
Msg DB 10,13, "De chay duoc 1 CT hop ngu ban can thuc hien cac buoc sau:"
DB 10,13,9,"- Dich file ASM thanh file OBJ."
DB 10,13,9,"- Lien ket file OBJ thanh file EXE."
DB 10,13,9,"- Chay file EXE.$"
.code
mov AX,@data
mov DS,AX
mov DX,offset Msg
mov AH,9
int 21h
K44dvt01
Trnh Công Sơn
mov AH,4Ch
int 21h
end
===================== END 6.2 ========================
Bài 6.3. Vi t CT nh p vào 1 ký t , xu t ra ký t li n tr c và li n sau.ế ướ
Ví d :
Moi ban nhap 1 ky tu: b
Ky tu lien truoc: a
Ky tu lien sau: c
===================== Gi i 6.3 ========================
.MODEL SMALL
.STACK 100H
.DATA
Msg1 DB "Nhap vao ky tu: $"
Msg2 DB "Ky tu lien truoc la: $"
Msg3 DB "Ky tu lien sau la: $"
XuongDong DB 10,13, "$"
.CODE
MOV AX, @DATA
MOV DS, AX
MOV DX, offset Msg1
MOV AH, 9
INT 21h
;nhap 1 ky tu
MOV AH, 1
INT 21h
mov BH,AL ; luu ky tu vua nhap vao BH
mov DX, offset XuongDong
mov AH, 9
int 21h
;xuat ky tu lien truoc
mov DX, offset Msg2
mov AH, 9
int 21h
mov AH,BH
DEC AH
mov DL, AH ; ky tu xuat dc luu trong DL
mov AH,2
int 21h
mov DX, offset XuongDong
K44dvt01
Trnh Công Sơn
mov AH, 9
int 21h
;xuat ky tu lien sau
mov DX, offset Msg3
mov AH, 9
int 21h
mov AH,BH
INC AH
mov DL, AH ; ky tu xuat dc luu trong DL
mov AH,2
int 21h
mov DX, offset XuongDong
mov AH, 9
int 21h
;ket thuc chuong trinh
mov AH, 4Ch ; thoat chuong trinh
int 21h
end
===================== END 6.3 ========================
Bài 6.4. Vi t CT nh p vào 1 ký t th ng. In ra ký t Hoaế ườ
Ví d :
Moi ban nhap 1 ky tu: b
Ky tu Hoa: B
===================== GI I 6.4 ========================
.Stack 100
.Data
Msg1 db 'moi ban nhap 1 ky tu: $'
Msg2 db 'Ky tu Hoa: $'
.Code
Main Proc
mov ax, @Data
mov ds, ax
mov ah, 9
lea dx, TB1
int 21h
mov ah, 1
int 21h
mov bl, al
mov ah, 2
mov dl, 10
int 21h
mov dl, 13
K44dvt01
Trnh Công Sơn
int 21h
mov ah, 9
lea dx, TB2
int 21h
mov ah, 2
mov dl, bl
sub dl, 20h
int 21h
mov ah,4Ch
int 21h
Main EndP
End Main
===================== END 6.4 ========================
Bài 6.5. Vi t CT nh p vào 1 ký t hoa. In ra ký t th ngế ườ
Ví d :
Moi ban nhap 1 ky tu: B
Ky tu th ng: bườ
===================== Gi i 6.5 ========================
.MODEL small
.STACK 100h
.DATA
Msg1 DB 13,10,"Moi ban nhap 1 ki tu: $"
Msg2 DB 13,10,"Ki tu thuong : $"
KTT DB ?
.CODE
; lay dia chi data dua vao DS
MOV AX,@data
MOV DS,AX
; xuat Msg1
MOV AH,9
MOV DX,offset Msg1
INT 21h
; nhap 1 ki tu tu ban phim va luu vao AL
MOV AH,1
INT 21h
; chuyen thanh ki tu thuong va dua vao KTT
ADD AL,20h ; hoac ADD AL,32
MOV KTT,AL
; xuat Msg2 va KTT
MOV AH,9
MOV DX,offset Msg2
INT 21h
K44dvt01