YOMEDIA
ADSENSE
Hợp ngữ ASM-Chương 06-Nhập môn ASM
640
lượt xem 295
download
lượt xem 295
download
Download
Vui lòng tải xuống để xem tài liệu đầy đủ
Tham khảo tài liệu 'hợp ngữ asm-chương 06-nhập môn asm', công nghệ thông tin, kỹ thuật lập trình phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả
AMBIENT/
Chủ đề:
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Hợp ngữ ASM-Chương 06-Nhập môn ASM
- h1 h2 Chöông 5 : Nhaäp moân Assembly Muïc tieâu Hieåu ngoân ngöõ maùy vaø ngoân ngöõ Assembly. Trình hô dò h A T ì h hôïp dòch Assembler.bl Lyù do nghieân cöùu Assembly. Hieu caùc thanh phaàn cô ban cuûa Assembly Hieåu cac thaønh phan baûn cua Naém ñöôïc caáu truùc cuûa 1 CT Assembly. Bieát vieát 1 chöông trình Assembly. Bieát caùch dòch, lieân keát vaø thöïc thi 1 chöông trình Assembly. 5/13/2009 Chuong 5 Nhap mon ASM 1
- Slide 1 h1 shjsahjsa huh, 10/13/2004 h2 ssasasasas huh, 10/13/2004
- Giôùi thieäu ngoân ngöõ Assembly Giuùp khaùm phaù bí maät phaàn cöùng cuõng nhö phaàn meààm maùùy tính. í Naém ñöôïïc caùch p n cöùng MT laøm vieääc vôùi heää phaà ñieàu haønh vaø hieåu ñöôïc baèng caùch naøo 1 trình öùng duïng giao tieáp vôùi heä ñieàu haønh. Moät MT hay moät hoï MT söû duïng 1 taäp leänh maõ maùùy rieââng cuõõng nhö 1 ngoâân ngöõ Assembly rieââng. i hö öõ A bl i 5/13/2009 Chuong 5 Nhap mon ASM 2
- Assembler Moät chöông trình vieát baèng ngoân ngöõ Assembly muoán MT thöc hieän ñöôc ta phaûi chuyen thanh muon thöïc ñöôïc phai chuyeån thaønh ngoân ngöõ maùy. Chöông trình duøng ñeå dòch 1 file vieát baèng Assembly ngoân ngöõ maùy , goïïi laø Assembler. g g g Assembler. Coù 2 chöông trình dòch: MASM vaø TASM 5/13/2009 Chuong 5 Nhap mon ASM 3
- Ly do nghieân cöu Assembly Lyù nghien cöùu Ñoù laø caùch tot nhat ñeå hoc phaàn cöng MT Ño la cach toát nhaát ñe hoïc phan cöùng vaø heä ñieàu haønh. Vì caùc tieän ích cuûa noù . Coù theå nhuùng caùc chöông trình con vieát baè b èng ASM vaøøo trong caùùcchöông t ì h vieáát t höô trình i baèng ngoân ngöõ caáp cao . 5/13/2009 Chuong 5 Nhap mon ASM 4
- Leänh may maùy Laø 1 chuoåi nhò phaân coù yù nghóa ñaëc bieät – noù ra leänh cho C CPU thöïc hieän taùùc vuï. i Taùc vuï ñoù coù theå laø : di chuyeåån 1 soáá töø vò trí nhô nay sang vò trí nhô kh ù h tö ò t í hôù ø ò t í hôù khac. Coäng 2 soá hay so saùnh 2 soá. A AL A M A 5/13/2009 Chuong 5 Nhap mon ASM 5
- Leänh may (cont) maùy Taäp leänh maùy ñöôc ñònh nghóa tröôùc khi CPU ñöôc may ñöôïc tröôc, ñöôïc saûn xuaát vaø noù ñaëc tröng cho kieåu CPU . Ex : B5 05 laø 1 leänh maùy vieáát daïng soáá hex, daøi 2 byte. Byte ñaàu B5 goïi laø Opcode Byte sau 05 goïi laø toaùn haïng Operand YÙù nghóa cuûa leänh B5 05 : cheùp giaù trò 5 vaøo reg AL 5/13/2009 Chuong 5 Nhap mon ASM 6
- Cach viet Caùch vieát 1 chöông trình Assembly Soaïïn CT Duøng 1 phaàn meàm soaïn thaûo VB baát kyø ñeå soan TenCT.ASM CT Assembly nhö : NotePad, NC, maøn hình C, Pascal ... CT coù phaàn môû roäng laø .ASM Dòch CT duøng MASM ñeå dòch chöông trình nguoàn .ASM File Object. Lieân keát CT duøng LINK ñeå lieân keát Object taïo taäp tin thöïc hieän .EXE Chaïy Chay CT Goû teân taäp tin thöïc hieän .EXE töø daáu nhaéc DOS ñeåå chaïy 5/13/2009 Chuong 5 Nhap mon ASM 7
- Dòch vaø noái keát chöông trình MASM E E T CT ASM T CT OBJ LINK E E T CT MAP T CT LIST T CT CRF T CT E E 5/13/2009 Chuong 5 Nhap mon ASM 8
- Moät chöông trình minh hoaï hoa DOSSEG MO D OFFSET MES .MODEL SMALL .STACK 100h MO AH .DATA INT MES DB “HELLO WORD”,’$’ MO AH CH .CODE CODE MAIN PROC INT MOV AX, @DATA MAIN ENDP MOV DS, AX END MAIN 5/13/2009 Chuong 5 Nhap mon ASM 9
- Cac file ñöôïc taïo Caùc ñöôc tao Sau khi dòch thanh coâng file nguoàn ASM ta co caùc file : thaønh cong nguon.ASM, coù cac File listing : file VB , caùc doøng coù ñaùnh soá thöù töï maõ. File Cross reference File Map File Obj Fil File EXE 5/13/2009 Chuong 5 Nhap mon ASM 10
- File Listing Microsoft (R) M Mi f Macro A Assembler V i 5.10 bl Version 10 10/11/4 Page 1-1 1- 1 DOSSEG 2 .MODEL SMALL 3 .STACK 100H 4 .DATA 5 0000 48 45 4C 4C 4F 20 MES DB "HELLO WORD$" 6 57 4F 52 44 24 7 .CODE 8 0000 MAIN PROC 9 0000 B8 ---- R MOV AX @DATA AX,@DATA 10 0003 8E D8 MOV DS, AX 11 0005 B4 09 MOV AH,9 12 0007 BA 0000 R MOV DX, OFFSET MES 13 000A CD 21 INT 21H 14 000C B4 4C MOV AH,4CH 15 000E CD 21 INT 21H 16 0010 MAIN ENDP 17 END MAIN ♀◘Microsoft ♀◘Microsoft (R) Macro Assembler Version 5.10 10/11/4 5/13/2009 Chuong 5 Nhap mon ASM 11
- Map File Start Stop Length Name p g Class 00000H 0001FH 00020H _TEXT CODE 00020H 0002AH 0000BH _DATA DATA 00030H 0012FH 00100H STACK STACK Origin Group 0002:0 DGROUP Program entry p g y point at 0000:0010 5/13/2009 Chuong 5 Nhap mon ASM 12
- Giaûi thích .model small : duøng kieåu caáu truùc
- Giaûi thích (cont) Cheùp ñòa chæ ñoaïn döõ lieäu vaøo thanh ghi AX. Sau ñoù cheùp vaøo thanh ghi DS Goïi haøm soá 9 cuûa Int 21h cuûa Dos ñeå xuaát chuoåi kyù töï ra maøn hình. Thoaùt khoûi CT . oat o C Main endp : ñaùnh daáu keát thuùc thuû tuïc End main : cham döt chöông trình chaám döùt 5/13/2009 Chuong 5 Nhap mon ASM 14
- Caáu truùc cuûa 1 CT ASM DOSSEG .MODEL kieåu boä nhôù .STACK kích thöôùc .DATA khai baùo bieán, haèng .CODE CODE MAIN PROC MOV AX, @DATA MOV DS,AX DS AX caùc leänh cuûa chöông trình chính MOV AH,4CH ; Thoaùt khoûi chöông trình , g INT 21H MAIN ENDP cac caùc chöông trình con khac neáu coù khaùc neu co END MAIN 5/13/2009 Chuong 5 Nhap mon ASM 15
- Caùc cheá ñoä boä nhôù Kieu Kieåu Mo ta Moâ taû SMALL Maõ leänh trong 1 ñoaïn.Döõ lieäu trong 1 ñoaïn MEDIUM Maõ leänh nhieààu hôn 1 ñoaïn.Döõ lieäu trong 1 ñoaïn COMPACT Maõ leänh trong 1 ñoaïn. Döõ lieäu nhieàu hôn 1 ñoaïn LARGE Maõ leänh nhieààu hôn 1 ñoaïn Döõ lieäu nhieàu hôn 1 ñoaïn,khoâng coù maûng naøo > 64K HUGE Maõ leänh nhieàu hôn 1 ñoaïn Döõ lieääu nhieàu hôn 1 ñoaïïn, maûng coù theå > 64K 5/13/2009 Chuong 5 Nhap mon ASM 16
- Daïng leänh Chuù thích [name] [operator] [ operand] [comment] Maõ leänh daïng Register, oâ nhôù Nhaõn, teân bieán gôïi nhôù Trò, haèng Teân thuû tuïc E MO C Moãi doøng chæ chöùa 1 leänh vaø moãi leänh LAP MO C phaûi naèèm treân 1 doøng LIST DB 5/13/2009 Chuong 5 Nhap mon ASM 17
- INT 21H Leänh INT soá hieäu ngaét ñöôïc duøng ñeå goïi chöông trình ngaét cuûa DOS vaø BIOS. ngat cua va BIOS. Ngaét 21h g Muoán söû duïng haøm naøo cuûa INT 21h ta ñaët function_number vaøo thanh ghi AH, sau ñoù goïi INT 21h Function_number chöùc naêng 1 nhaäp 1 ky tö töø baøn phím kyù töï tö ban 2 Xuaát 1 kyù töï ra maø hình. 9 Xuaáát 1 chuoååi kyù töï ra maøn hình 5/13/2009 Chuong 5 Nhap mon ASM 18
- INT 21h (cont) Haøm 1 : Nhaäp 1 kyù töï Input : AH =1 Output : AL = maõ ASCCI cuûa phím aán = 0 neáu 1 phím ñieàu khieåân ñöôïc aán Haøm 2 : Hieån thò 1 kyù töï ra maøn hình Input : AH =2 DL = Maõ ASCII cuûa kyù töï hieån thò hay kyù töï ñieàu khieån 5/13/2009 Chuong 5 Nhap mon ASM 19
ADSENSE
CÓ THỂ BẠN MUỐN DOWNLOAD
Thêm tài liệu vào bộ sưu tập có sẵn:
Báo xấu
LAVA
AANETWORK
TRỢ GIÚP
HỖ TRỢ KHÁCH HÀNG
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn