22/08/2011
22/08/2011
Chuong 3 Debug
Chuong 3 Debug
1
1
CH
CH
ệ
ệ
ễNG TRèNH Gễế RO
ễNG TRèNH Gễế RO
I DEBUG
I DEBUG
Dũch
Dũch
ủử
ủử
ụ
ụ
ù
ù
c 1 ch
c 1 ch
ử
ử
ụng tr
ụng tr
ỡ
thay
thay
ủ
ủ
o
o
ồ
ồ
i no
i no
ọ
ọ
i dung cu
i dung cu
ỷ
ỷ
a ca
a ca
ự
ự
c bie
c bie
ỏ
ỏ
n
n
D
o
D
o
h
a
õ
n
h
o
a
n
g
n
h
ũ
p
h
a
õ
n
h
o
a
ở
ở
c
A
S
C
II
t
r
o
o
ó
t
r
ụ
ù
l
u
y
e
ọ
n
t
a
ọ
p
v
i
e
ỏ
t
c
h
ử
ụ
n
g
t
r
ỡ
nh cu
û
û
a Debug
a Debug
<mã le
<mã le
ä
ä
nh > <thông so
nh > <thông so
á
á
>
>
Trong đó mã lệnh là 1 trong các chữ A,B,C,D,E, còn thông
số thì thay đổi tùy theo lệnh.
Các thông số có thể là :
Đòa chỉ : là 1 bộ đòa chỉ đầy đủ segment : offset hay chỉ cần
offset là đủ. Segment có thể dùng tên thanh ghi.
Ex : F000:0100
DS: 200
0AF5
22/08/2011
22/08/2011
Chuong 3 Debug
Chuong 3 Debug
3
3
Da
ọ
p le
p le
ọ
ọ
nh cu
nh cu
ỷ
ỷ
a Debug
a Debug
A <Assemble> :
A <Assemble> :
cho phe
cho phe
ự
ự
p vie
p vie
ỏ
ỏ
t t
t t
ửứ
ửứ
ba
ba
ứ
ứ
n ph
ng gụ
ù
ù
i nhụ
i nhụ
ự
ự
.
.
A [ <
A [ <
ủ
ủ
ũa ch
ũa ch
ổ
ổ
>]
>]
Ex :
Ex :
-
-
A 100 dũch ụ
A 100 dũch ụ
ỷ
ỷ
ủ
ủ
ũa ch
(Debug la
ỏ
ỏ
y
y
ủ
ủ
ũa ch
ũa ch
ổ
ổ
ủ
ủ
oa
oa
ù
ù
n CS)
n CS)
-
-
A DS:2000h
A DS:2000h
dũch ụ
dũch ụ
ỷ
ỷ
ủ
ủ
ũa ch
nh A
Pha
Pha
ỷ
ỷ
i nha
i nha
ọ
ọ
p le
p le
ọ
ọ
nh va
nh va
ứ
ứ
o theo t
o theo t
ửứ
ửứ
ng do
ng do
ứ
ứ
ng mo
ng mo
ọ
ọ
t va
p nha
ỏ
ỏ
n Enter ụ
n Enter ụ
ỷ
ỷ
do
do
ứ
ứ
ng tro
ng tro
ỏ
ỏ
ng.
ng.
Ex :
Ex :
-
-
A 100
A 100
5514:0100 MOV AH, 2
5514:0100 MOV AH, 2
5514:0102 MOV DL, 41
5514:0102 MOV DL, 41
5514:0104 INT 21H
5514:0104 INT 21H
SEGMENT OFFSET
lie
ä
ä
t kê ca
t kê ca
ù
ù
c ô nhơ
c ô nhơ
ù
ù
co
co
ù
ù
no
no
ä
ä
i dung kha
i dung kha
ù
ù
c nhau.
c nhau.
Cú pháp : C <khoảng> , < đòa chỉ>
Ex : - C 100, 200, 3000 : 1000
So sánh ô nhớ DS:100h với ô nhớ 3000:1000h, ô nhớ DS:101h với
ô nhớ 3000:1001h… Cho đến ô nhớ DS :200h với ô nhớ
3000:1100h.
ng he
ọ
ọ
16 va
16 va
ứ
ứ
ASCII
ASCII
.
.
Caựch goùi : D <khoaỷng>
Ex : - D F000 : 0
- D ES : 100
- D 100
22/08/2011
22/08/2011
Chuong 3 Debug
Chuong 3 Debug
8
8
Le
Le
ä
ä
nh F (
nh F (
Fill)
Fill)
Cu
a
à
à
y trò va
y trò va
ø
ø
o vu
o vu
ø
ø
ng nhơ
ng nhơ
ù
ù
ngay
ngay
ta
ta
ï
ï
i
i
đ
đ
òa ch
òa ch
ỉ
ỉ
mong muo
é
p
p
ñ
ñ
a
a
à
à
y vu
y vu
ø
ø
ng nhô
ng nhô
ù
ù
ta
ta
ï
ï
i
i
ñ
ñ
òa ch
òa ch
æ
æ
offset 100h
Û
-F 100 "TOI DUA EM SANG SONG"
-D 100
0ADD:0100 54 4F 49 20 44 55 41 20-45 4D 20 53 41 4E 47 20 TOI DUA EM SANG
0ADD:0110 53 4F 4E 47 54 4F 49 20-44 55 41 20 45 4D 20 53 SONGTOI DUA EM S
0ADD:0120 41 4E 47 20 53 4F 4E 47-54 4F 49 20 44 55 41 20 ANG SONGTOI DUA
0ADD:0130 45 4D 20 53 41 4E 47 20-53 4F 4E 47 54 4F 49 20 EM SANG SONGTOI
0ADD:0140 44 55 41 20 45 4D 20 53-41 4E 47 20 53 4F 4E 47 DUA EM SANG SONG
0ADD:0150 54 4F 49 20 44 55 41 20-45 4D 20 53 41 4E 47 20 TOI DUA EM SANG
0ADD:0160 53 4F 4E 47 54 4F 49 20-44 55 41 20 45 4D 20 53 SONGTOI DUA EM S
0ADD:0170 41 4E 47 20 53 4F 4E 47-54 4F 49 20 44 55 41 20 ANG SONGTOI DUA
22/08/2011
22/08/2011
Chuong 3 Debug
Chuong 3 Debug
11
11
D (DUMP)
D (DUMP)
Mục đích : in nội dung bộ nhớ trong MT ra màn hình dưới dạng số hex.
Cú pháp : D [ address]
D [range]
Ex : in nội dung vùng nhớ đã lắp đầy ở ví dụ trước ở đòa chỉ
100h
Ex2 : xem nội dung vùng nhớ 16 bytes bắt đầu ở đòa chỉ F000:100
- D F000:100 L10
22/08/2011
22/08/2011
Chuong 3 Debug
Chuong 3 Debug
ứ
ứ
o le
o le
ọ
ọ
nh D
nh D
ủ
ủ
e
e
ồ
ồ
xem no
xem no
ọ
ọ
i dung vu
i dung vu
ứ
ứ
ng nhụ
ng nhụ
ự
ự
cu
cu
ỷ
ỷ
- D 0000:0040 L 30
Soỏ bytes
22/08/2011
22/08/2011
Chuong 3 Debug
Chuong 3 Debug
13
13
E (ENTER)
E (ENTER)
Du
Du
ø
ø
ng
ng
đ
đ
e
e
å
å
đư
đư
a d
a d
ư
ư
õ lie
õ lie
á
á
n.
n.
Cách gọi :
- E <đòa chỉ> <danh sách>
Trò nhập vào theo dạng số 16 từng byte một
Dấu - dùng để lùi lại 1 đòa chỉ
Space Bar dùng để tới 1 đòa chỉ
Enter dùng để kết thúc
22/08/2011
22/08/2011
Chuong 3 Debug
Chuong 3 Debug
14
14
Minh ho
Minh ho
ï
ï
a le
a le
ä
ä
nh E
nh E
Mu
Mu
ï
ï
e
b
u
g
l
a
á
y
đ
o
a
ï
n
c
h
ỉ
b
ơ
û
i
D
S
N
e
á
u
t
a
k
h
ọ
ọ
nh U (Unassemble)
nh U (Unassemble)
coõng du
coõng du
ù
ù
ng : in ra 32 bytes maừ ma
ng : in ra 32 bytes maừ ma
ự
ự
y cu
y cu
ỷ
ỷ
a
a
ch
ch
ử
ử
ụng tr
ụng tr
ỡ
ỡ
nh trong bo
nh trong bo
ọ
ọ
i nhụ
i nhụ
ự
ự
.
.
cu
cu
ự
ự
pha
pha
ự
ự
p : U [address]
p : U [address]
U [range]
U [range]
Ex : U 100 119
I
n
r
a
m
a
ứ
n
h
ỡ
n
0
0
ủ
e
ỏ
n
C
S
:
1
1
9
22/08/2011
22/08/2011
Chuong 3 Debug
Chuong 3 Debug
16
16
Le
Le
ọ
ọ
nh R (Register)
nh R (Register)
Coõng du
Coõng du
ù
ù
ng : xem va
ng : xem va
ỷ
ỷ
thanh ghi)
thanh ghi)
xem thanh ghi AX :
xem thanh ghi AX :
-
-
R AX
R AX
xem thanh ghi cụ
xem thanh ghi cụ
ứ
ứ
: R F
: R F
Ex : muo
Ex : muo
ỏ
ỏ
n ba
n ba
ọ
ọ
t thanh ghi cụ
t thanh ghi cụ
ứ
ứ
CF va
CF va
ng : ta
ng : ta
ï
ï
o ta
o ta
ä
ä
p tin ca
p tin ca
à
à
n
n
ñ
ñ
o
o
ï
ï
c hay ghi tr
c hay ghi tr
ö
ö
ô
ô
ù
ù
c
c
òa ch
òa ch
æ
æ
]
]
22/08/2011
22/08/2011
Chuong 3 Debug
Chuong 3 Debug
18
18
Th
Th
í
í
du
du
ï
ï
minh ho
minh ho
ï
ï
a le
a le
ä
ä
nh
nh
i Debug va
ứ
ứ
go
go
ù
ù
i la
i la
ù
ù
i ta
i ta
ọ
ọ
p tin
p tin
theo ca
theo ca
ự
ự
ch sau :
ch sau :
C :
C :
\
\
> Debug Love.txt
> Debug Love.txt
t
nhụ
ự
ự
.
.
22/08/2011
22/08/2011
Chuong 3 Debug
Chuong 3 Debug
20
20
Le
Le
ä
ä
nh W (Write)
nh W (Write)
Cu
Cu
ù
ù
pha
pha
ù
ù
p : W [address]
p : W [address]
Thường được sử dụng chung với lệnh N
Ex : tạo tập tin có tên Love.txt
Bước 1 : dùng lệnh E để đưa câu ‘I love you more than I can say” vào ô nhớ ở đòa chỉ
ù
p :
p :
-
-
T [= <
T [= <
đ
đ
ia
ia
ï
ï
ch
ch
ỉ
ỉ
>][so
>][so
á
á
la
la
à
à
n]
n]
Mục đích : dùng để chạy 1 hay nhiều lần các lệnh
trong bộ nhớ
Ex : - T = 3000:1000
p sector lua
ä
ä
n
n
ly
ly
ù
ù
t
t
ừ
ừ
đó
đó
a va
a va
ø
ø
o bo
o bo
ä
ä
nhơ
nhơ
ù
ù
.
.
Cú pháp : - L <đòa chỉ> [<đóa> <sector><số>]
p co
p co
ä
ä
ng va
ng va
ø
ø
tr
tr
ừ
ừ
he
he
ä
ä
16
16
Cú pháp : - H <trò 1> <trò 2>
Kết quả : hiện ra tổng và hiệu của trò 1 và trò 2
22/08/2011
22/08/2011
Chuong 3 Debug
Chuong 3 Debug
24
24
Le
Le
ọ
ọ
ự
ự
pha
pha
ự
ự
p :
p :
-
-
S <khoa
S <khoa
ỷ
ỷ
ng> <danh sa
ng> <danh sa
ự
ự
ch>
ch>
Gia
Gia
ỷ
ỷ
i th
i th
ớ
ớ
ch : t
ch : t
ủ
ủ
aừ ch
aừ ch
ổ
ổ
ủ
ủ
ũnh hay khoõng? Ne
ũnh hay khoõng? Ne
ỏ
ỏ
u co
u co
ự
ự
Debug hie
Debug hie
ọ
ọ
n ca
n ca
ự
ự
c
c
ủ
ủ
ũa ch
ũa ch
Ex :
Ex :
-
-
S 100 L 1000
S 100 L 1000
DOS
DOS
18AF : 0154
18AF : 0154
18AF : 0823
18AF : 0823
Ex2 :
Ex2 :
-
-
S 2000 2200 13,15,8A, 8
S 2000 2200 13,15,8A, 8
22/08/2011
22/08/2011
Chuong 3 Debug
Chuong 3 Debug
25
25
Le
Le
n 1
n 1
ủ
ủ
ũa ch
ũa ch
ổ
ổ
kha
kha
ự
ự
c.
c.
Cu
Cu
ự
ự
pha
pha
ự
ự
p :
p :
-
-
M <khoa
M <khoa
ỷ
ỷ
M CS:100 L 50 ES:300
M CS:100 L 50 ES:300
Che
Che
ự
ự
p 50 bytes t
p 50 bytes t
ửứ
ửứ
CS:100
CS:100
ủ
ủ
e
e
ỏ
ỏ
n ES:300
n ES:300