Bài giảng Vi điều khiển: Chương 3 - Lập trình hợp ngữ
Số trang: 10
Loại file: ppt
Dung lượng: 199.50 KB
Lượt xem: 15
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Chương 3 "Lập trình hợp ngữ" thuộc bài giảng Vi điều khiển giới thiệu đến các bạn những kiến thức về khuôn dạng chương trình hợp ngữ, các ký hiệu đặc biệt, cấu trúc tổng quát của 1 dòng lệnh,... Mời các bạn cùng tham khảo nội dung bài giảng để có thêm tài liệu học tập và nghiên cứu.
Nội dung trích xuất từ tài liệu:
Bài giảng Vi điều khiển: Chương 3 - Lập trình hợp ngữChöông3:LAÄPTRÌNHHÔÏPNGÖÕ Ngoân ngöõ caáp cao : Söû duïng caùc töø vaø caùc phaùt bieåu deã hieåu ñoái vôùi con ngöôøi maëc duø coøn khaù xa môùi ñaït ñöôïc möùc ñoä deã hieåu nhö ngoân ngöõ töï nhieân. Ví duï C, Pascal. Ngoân ngöõ maùy (Machine Language) : Laø moät chuoãi caùc maõ nhò phaân ñöôïc phaàn cöùng thöïc thi. Hôïp ngöõ (Assembly Language) : thay theá caùc maõ nhò phaân baèng caùc töø gôïi nhôù ñeå cho vieäc laäp trình deã daøng hôn.Ví duï : thöïc hieän vieäc coäng noäi dung cuûa thanh ghi A vôùi noäi dung cuûa R7, keát quaû boû vaøo ANgoân ngöõ caáp cao (C) : 2+5KHUOÂNDAÏNGCHÖÔNGTRÌNHHÔÏP NGÖÕ chædaãn ORG 0H ;ñòachæbaétñaàu KhôûiñoängStack MOV SP,#30H .leänh1 .Chöôngtrình GoïichöôngtrìnhconChính . .leänhn Chöôngtrìnhcon: . . RET Caùcpheùpgaùn DBIT,DB,DW,EQU… KeátthuùcCT END Trong 1 chöông trình hôïp ngöõ chöùa :• Caùc doøng leänh : Laø caùc maõ gôïi nhôù cuûa caùc leänh thöïc thi ñöôïc (MOV).• Caùc chæ daãn : laø caùc leänh cuûa trình dòch hôïp ngöõ duøng ñeå ñònh nghóa caáu truùc chöông trình (ORG, END).• Caùc ñieàu khieån : Thieát laäp cheá ñoä cuûa trình dòch hôïp ngöõ vaø caùc luoàng hôïp dòch tröïc tieáp. Phaûi ñöôïc ñöùng tröôùc bôûi $.• Caùc chuù thích : ñöa ra caùc giaûi thích veà muïc ñích vaø hoïat ñoäng cuûa caùc chuoãi leänh.Caáutruùctoångquaùtcuûa1doøngleänh [Tröôøngnhaõn][Tröôøngmaõgôïinhô][Tröôøng toaùnhaïng][Tröôøngchuùthích]- Tröôøng nhaõn:Bieåu thò ñòa chæ cuûa leänh theo sau- Tröôøng maõ gôïi nhôù : Laø caùc maõ gôïi nhôù cuûa leänh : ADD- Tröôøng toaùn haïng :Chöùa ñòa chæ hoaëc döõ lieäu maø leänh seõ söû duïng.- Tröôøng chuù thích : Laø caùc ghi chuù laøm roõ chöông trình. Phaûi ñöôïc baét ñaàu baèng daáu ;Caùcchædaãn• Ñieàu khieån traïng thaùi : ORG, END• Ñònh nghóa kyù hieäu : EQU• Daønh tröôùc vuøng nhôù / khôûi ñoäng vuøng nhôù DBIT, DB, DWORG (Set origin)Cuù phaùp : ORG Bieåu thöùc ORG thay ñoåi noäi dung boä ñeám vò trí ñeå thieát laäp moät goác môùi cuûa chöông trình cho caùc phaùt bieåu theo sauVí duï : ORG 100h ; boä ñeám vò trí ñöôïc thieát laäp baèng100hEND:Cuù phaùp END Ñaây laø phaùt bieåu cuoái cuøng cuûa chöông trình nguoàn.EQU(Equal) : Duøng ñeå gaùn giaù trò soá cho teân kyù hieäu ñöôïc ñònh nghóa. Hang EQU 50 ; Hang coù giaù trò laø 50 Message EQU ‘chao cac ban’DB (Define Byte) : khôûi ñoäng vuøng nhôù maõ cuøng vôùi caùc giaù trò cuûa byte nhaõn : DB bieåu thöùc 1, bieåu thöùc 2… SQUARE: DB 0, 1, 4, 9, 16, 25DW (Define word) : Gioáng nhö DB ngoïai tröø 2 byte ñöôïc gaùn cho moãi thaønh phaàn döõ lieäu. CAÙCKYÙHIEÄUÑAËCBIEÄT-Nhaûytaïichoã$ JNB TI, $ Nhan : JNB TI, Nhan- Ñòachægiaùntieáp:@ ADD A, @R0 MOVC A, @A+ PC- Döõlieäutöùcthôøi:# MOV A, #0FFh- Ñòachædöõlieäu:MOV A, 45h Caùc kyù hieäu tieàn ñònh nghóa coù theå ñöôïcsöû duïng thay cho ñòa chæ caùc thanh ghi ñaëc bieätMOV A, SBUF ; töông ñöông leänh : MOV A,99h - Ñòachæbit: Coù 3 caùch ñeå xaùc ñònh ñòa chæ bit + Duøng ñòa chæ bit ñaõ bieát tröôùc + Söû duïng toaùn töû dot (.) giöõa ñòa chæ bytevaø vò trí bit + Söû duïng kyù hieäu tieàn ñònh nghóa Ví duï : SETB 0E7h SETB ACC.7 JNB TI, $ ; TI laø kyù hieäu tieàn ñònh nghóa;töông ñöông leänh : JNB 99h, $ MOÄTSOÁVÍDUÏCÔBAÛN- LAÄP TRÌNH HIEÅN THÒ LED- LAÄP TRÌNH ÑIEÀU KHIEÅN LED
Nội dung trích xuất từ tài liệu:
Bài giảng Vi điều khiển: Chương 3 - Lập trình hợp ngữChöông3:LAÄPTRÌNHHÔÏPNGÖÕ Ngoân ngöõ caáp cao : Söû duïng caùc töø vaø caùc phaùt bieåu deã hieåu ñoái vôùi con ngöôøi maëc duø coøn khaù xa môùi ñaït ñöôïc möùc ñoä deã hieåu nhö ngoân ngöõ töï nhieân. Ví duï C, Pascal. Ngoân ngöõ maùy (Machine Language) : Laø moät chuoãi caùc maõ nhò phaân ñöôïc phaàn cöùng thöïc thi. Hôïp ngöõ (Assembly Language) : thay theá caùc maõ nhò phaân baèng caùc töø gôïi nhôù ñeå cho vieäc laäp trình deã daøng hôn.Ví duï : thöïc hieän vieäc coäng noäi dung cuûa thanh ghi A vôùi noäi dung cuûa R7, keát quaû boû vaøo ANgoân ngöõ caáp cao (C) : 2+5KHUOÂNDAÏNGCHÖÔNGTRÌNHHÔÏP NGÖÕ chædaãn ORG 0H ;ñòachæbaétñaàu KhôûiñoängStack MOV SP,#30H .leänh1 .Chöôngtrình GoïichöôngtrìnhconChính . .leänhn Chöôngtrìnhcon: . . RET Caùcpheùpgaùn DBIT,DB,DW,EQU… KeátthuùcCT END Trong 1 chöông trình hôïp ngöõ chöùa :• Caùc doøng leänh : Laø caùc maõ gôïi nhôù cuûa caùc leänh thöïc thi ñöôïc (MOV).• Caùc chæ daãn : laø caùc leänh cuûa trình dòch hôïp ngöõ duøng ñeå ñònh nghóa caáu truùc chöông trình (ORG, END).• Caùc ñieàu khieån : Thieát laäp cheá ñoä cuûa trình dòch hôïp ngöõ vaø caùc luoàng hôïp dòch tröïc tieáp. Phaûi ñöôïc ñöùng tröôùc bôûi $.• Caùc chuù thích : ñöa ra caùc giaûi thích veà muïc ñích vaø hoïat ñoäng cuûa caùc chuoãi leänh.Caáutruùctoångquaùtcuûa1doøngleänh [Tröôøngnhaõn][Tröôøngmaõgôïinhô][Tröôøng toaùnhaïng][Tröôøngchuùthích]- Tröôøng nhaõn:Bieåu thò ñòa chæ cuûa leänh theo sau- Tröôøng maõ gôïi nhôù : Laø caùc maõ gôïi nhôù cuûa leänh : ADD- Tröôøng toaùn haïng :Chöùa ñòa chæ hoaëc döõ lieäu maø leänh seõ söû duïng.- Tröôøng chuù thích : Laø caùc ghi chuù laøm roõ chöông trình. Phaûi ñöôïc baét ñaàu baèng daáu ;Caùcchædaãn• Ñieàu khieån traïng thaùi : ORG, END• Ñònh nghóa kyù hieäu : EQU• Daønh tröôùc vuøng nhôù / khôûi ñoäng vuøng nhôù DBIT, DB, DWORG (Set origin)Cuù phaùp : ORG Bieåu thöùc ORG thay ñoåi noäi dung boä ñeám vò trí ñeå thieát laäp moät goác môùi cuûa chöông trình cho caùc phaùt bieåu theo sauVí duï : ORG 100h ; boä ñeám vò trí ñöôïc thieát laäp baèng100hEND:Cuù phaùp END Ñaây laø phaùt bieåu cuoái cuøng cuûa chöông trình nguoàn.EQU(Equal) : Duøng ñeå gaùn giaù trò soá cho teân kyù hieäu ñöôïc ñònh nghóa. Hang EQU 50 ; Hang coù giaù trò laø 50 Message EQU ‘chao cac ban’DB (Define Byte) : khôûi ñoäng vuøng nhôù maõ cuøng vôùi caùc giaù trò cuûa byte nhaõn : DB bieåu thöùc 1, bieåu thöùc 2… SQUARE: DB 0, 1, 4, 9, 16, 25DW (Define word) : Gioáng nhö DB ngoïai tröø 2 byte ñöôïc gaùn cho moãi thaønh phaàn döõ lieäu. CAÙCKYÙHIEÄUÑAËCBIEÄT-Nhaûytaïichoã$ JNB TI, $ Nhan : JNB TI, Nhan- Ñòachægiaùntieáp:@ ADD A, @R0 MOVC A, @A+ PC- Döõlieäutöùcthôøi:# MOV A, #0FFh- Ñòachædöõlieäu:MOV A, 45h Caùc kyù hieäu tieàn ñònh nghóa coù theå ñöôïcsöû duïng thay cho ñòa chæ caùc thanh ghi ñaëc bieätMOV A, SBUF ; töông ñöông leänh : MOV A,99h - Ñòachæbit: Coù 3 caùch ñeå xaùc ñònh ñòa chæ bit + Duøng ñòa chæ bit ñaõ bieát tröôùc + Söû duïng toaùn töû dot (.) giöõa ñòa chæ bytevaø vò trí bit + Söû duïng kyù hieäu tieàn ñònh nghóa Ví duï : SETB 0E7h SETB ACC.7 JNB TI, $ ; TI laø kyù hieäu tieàn ñònh nghóa;töông ñöông leänh : JNB 99h, $ MOÄTSOÁVÍDUÏCÔBAÛN- LAÄP TRÌNH HIEÅN THÒ LED- LAÄP TRÌNH ÑIEÀU KHIEÅN LED
Tìm kiếm theo từ khóa liên quan:
Bài giảng Vi điều khiển Vi điều khiển Lập trình hợp ngữ Khuôn dạng chương trình hợp ngữ Cấu trúc dòng lệnh Tổng quát dòng lệnhTài liệu liên quan:
-
Giáo trình Vi điều khiển (Nghề: Cơ điện tử - Trình độ: Cao đẳng) - Trường Cao đẳng nghề Ninh Thuận
127 trang 283 0 0 -
Báo cáo môn học vi xử lý: Khai thác phần mềm Proteus trong mô phỏng điều khiển
33 trang 185 0 0 -
Giáo trình Vi điều khiển (Nghề: Điện công nghiệp - Cao đẳng) - Trường Cao đẳng Cơ giới (2022)
144 trang 155 0 0 -
Đề cương chi tiết học phần Vi điều khiển
15 trang 142 0 0 -
Ứng dụng vi điều khiển PIC 16F877A trong thí nghiệm vật lí phổ thông
12 trang 120 0 0 -
Bài tập lớn môn Vi xử lý, vi điều khiển: Thiết kế bộ điều khiển tốc độ của động cơ điện một chiều
27 trang 118 0 0 -
Giáo trình Kỹ thuật vi điều khiển
121 trang 113 0 0 -
Tài liệu thực hành Vi điều khiển 8051
55 trang 106 0 0 -
Đồ án vi xử lý đề tài : nghiên cứu thiết kế mạch đo khoảng cách sử dụng vi điều khiển Pic 16F887
45 trang 97 1 0 -
Luận văn: Xây dựng mô hình điều khiển động cơ DC servo bằng vi điều khiển
85 trang 96 0 0