Liên kết các ngôn ngữ bậc cao với ASM

Slides:



Advertisements
Similar presentations
Đánh giá Quốc gia có Hệ thống cho Việt Nam Các ư u tiên về Giảm nghèo, Phát triển Công bằng và Bền vững Ngày 5 tháng 4 n ă m 2016.
Advertisements

Giáo viên thực hiện: Lò Thị Nhung Đơn vị công tác: Trường THCS Búng Lao, huyện Mường Ảng, tỉnh Điện Biên. GIÁO ÁN ĐỊA LÍ 7 Chương II: Môi trường đới ôn.
Quản trị Rủi ro thiên tai và Biến đổi khí hậu
Báo cáo Cấu trúc đề thi PISA và Các dạng câu hỏi thi PISA
MỘT SỐ TÁC GIẢ TIÊU BIỂU ( ) Nhóm tự lực văn đoàn và phong trào thơ mới. Ngoài ra còn có các nhóm: Phong hóa, Ngày nay, Hà Nội báo (Huy Thông,
XÂY DỰNG VÀ PHÁT TRIỂN CHƯƠNG TRÌNH ĐÀO TẠO THEO ĐỀ XƯỚNG CDIO
Rainforest Alliance đào tạo cho các nông trại trà ở Việt Nam
Kiểm thử và đảm bảo chất lượng phần mềm
Qua hàng ngàn năm dựng nước và giữ nước, dân tộc ta đã để lại nhiều bài học vô giá. Nổi bật trong đó là tinh thần đoàn kết, ý thức cộng đồng. Hai truyền.
TẠO TẤM TẾ BÀO SỪNG TỰ THÂN ĐIỀU TRỊ BỎNG SÂU Ở TRẺ EM Huỳnh Duy Thảo , Nguyễn Bảo Tường , Trần Thị Thanh Thủy , Trần Công Toại   Bộ môn Mô – Phôi,
TẠO TẤM TẾ BÀO SỪNG TỰ THÂN ĐIỀU TRỊ BỎNG SÂU Ở TRẺ EM Huỳnh Duy Thảo , Nguyễn Bảo Tường , Trần Thị Thanh Thủy , Trần Công Toại   Bộ môn Mô – Phôi,
L/O/G/O NGUYÊN LÝ KẾ TOÁN Nguyễn Hữu Quy (MBA,CPA,APC)
1 ĐỒNG NAI ĐÁNH GIÁ TÌNH HÌNH VÀ ĐỀ XUẤT ÁP DỤNG HIỆU QUẢ MÔ HÌNH KINH TẾ DƯỢC TẠI BỆNH VIỆN ĐA KHOA ĐỒNG NAI NĂM 2017 Học viên: Nhóm 5 _ PP111.
TRƯỜNG ĐẠI HỌC THĂNG LONG
GIỚI THIỆU TRÌNH BIÊN DỊCH FREE PASCAL
Thực hiện các cuộc họp quan trọng
QUẢN TRỊ THÀNH TÍCH Performance Management
BÀI 2. CẤU TẠO VÀ CÁC THIẾT BỊ CỦA MÁY TÍNH ĐIỆN TỬ
Ghi chú chung về khóa học
GIỚI THIỆU PHẦN MỀM THI TRẮC NGHIỆM ONLINE (EOS)
SỞ GD&ĐT TỈNH ĐIỆN BIÊN Bài giảng
KHAI PHÁ DỮ LIỆU (DATA MINING)
VÀ CÁC CHÍNH SÁCH PHÒNG CHỐNG TÁC HẠI THUỐC LÁ
Công nghệ phần mềm Thẩm định và kiểm định.
CẤU TRÚC DỮ LIỆU VÀ GIẢI THUẬT
VI MẠCH ĐiỀU KHIỂN VÀ CẤU TRÚC BUS TRONG MÁY TÍNH
Ngôn ngữ lập trình C/C++
Rừng và các giá trị từ rừng
Chương 6 Thiết kế hệ thống.
Đức Hồng Y Nguyễn Văn Thuận cầu bầu
Module 6 – Managing for Sustainability
Khởi động SXSH với công cụ quản lý nội vi 5S
Hệ Thống Quản Lý An Toàn Thực Phẩm
Bộ nhớ máy tính Tổng quan bộ nhớ trong máy tính Bộ nhớ bán dẫn
CHẾ ĐỘ PHÁP LÝ VỀ CÔNG TY CỔ PHẦN
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
TRUYỀN THÔNG VỀ PHÒNG CHỐNG BỆNH DO VI RÚT ZIKA 1
Chương 6 Thiết kế hướng đối tượng
Giáo viên: Đặng Việt Cường
DI SẢN THẾ GIỚI WORLD HERITAGE CỔ THÀNH HUẾ VIỆT NAM
Ngôn ngữ học khối liệu - khoa học liên ngành về ngôn ngữ ứng dụng
SUCCESS PROGRAM SUMMER 2017
Giữa bối cảnh cạnh tranh ngày càng khốc liệt, Khởi Nghiệp đang trở thành một làn sóng mới trong thị trường kinh doanh ở Việt Nam bởi mô hình giàu sức.
UBND TỈNH ĐIỆN BIÊN SỞ GIÁO DỤC VÀ ĐÀO TẠO
KỸ THUẬT LẬP TRÌNH GV: Phạm Thị Xuân Diệu
LẬP TRÌNH ỨNG DỤNG WINDOW FORM
Tiện (Turning) Đ1. CÔNG DỤNG VÀ PHÂN LOẠI
Biến và Kiểu Dữ Liệu Chương 2.
HƯỚNG DẪN SỬ DỤNG PHẦN MỀM ADOBE PRESENTER
Giới Thiệu Tiêu Đề I.
Operators and Expression
NỘI DUNG I. THỰC TRẠNG QL VỐN NN TẠI CÁC DNNN
… nghe kể rằng ... Click.
Trách nhiệm giải trình của doanh nghiệp ở diện rộng
PHÒNG GIÁO DỤC VÀ ĐÀO TẠO
GIỚI THIỆU VỀ LIÊN KẾT HYDRO
QUẢN TRỊ TÍNH ĐA DẠNG THÔNG QUA NHIỀU HOẠT ĐỘNG KINH DOANH
Môn: Lập trình Hướng đối tượng (Object Oriented Programming)
Chương 4: Lập trình hợp ngữ
HƯỚNG DẪN MÃ HÓA BỆNH TẬT, TỬ VONG THEO ICD - 10
Chương 4 – lớp Liên Kết Dữ Liệu
NHÂN QUYỀN LÀ GÌ? Dẫn Nhập Nhân quyền và thu thập tài liệu: Bài Một.
BÁO CÁO MỘT CA ĐIỀU TRỊ GÃY ĐÀI QUAY BẰNG XUYÊN ĐINH KIRSCHNER/ C-ARM
So sánh marketing online & marketing truyền thống
Chương 4: Tập gõ 10 ngón Chương 2: Học cùng máy tính
Chương 3: Tổ chức thông tin
Bµi 14. LµM QUEN VíI PHÇN MÒM T¹O ¶NH §éNG
c¸c thµnh phÇn c¬ b¶n cña ng«n ng÷ lËp tr×nh
Ng­êi d¹y: NguyÔn Thuý Nga Tr­êng: TH Kh­¬ng §×nh
Presentation transcript:

Liên kết các ngôn ngữ bậc cao với ASM Sinh viên :Nguyễn Công Trình Mục tiêu : Nắm chắc cấu trúc và tự lập trình được

Liên Kết Pascal với ASM Cú pháp : Các câu lệnh Pascal Các câu lệnh ASM End; Các câu lệnh Pacal

Liên Kết Pascal với ASM Cách dịch và liên kết : Cú pháp : tpc-ml-Ic:\tp\include-Lc:\tp\lib ss Với : TP.exe : đây là chương trình dịch của Tpvới các tùy chọn được xác lập bởi menu options TPC.exe : đây là các chương trình dịch của TP với các tùy chọn được xác lập trên dòng lệnh dịch

Viết tách biệt ngôn ngữ Pascal và tệp ASM Nếu đa tệp thì phải khai báo PUBLIC và EXTRN với các nhãn dùng chung. Với nhãn là biến nhớ : .Data extrn tên_biến_nhớ : Kiểu Kiểu của ASM TP Byte Char word Integer Dword Real

Viết tách biệt ngôn ngữ Pascal và tệp ASM Nếu đa tệp thì phải khai báo PUBLIC và EXTRN với các nhãn dùng chung. Với nhãn là tên chương trình con: .Code Public tên_chương_trình_con tên_chương _trình_con Proc : Ret tên_chương_trình_con endp

Vấn đề near/far của chương trình con Nếu chương trình con cùng nằm trên một tệp với chương trình chính hoặc chương trình con nằm ở phần thêm vào của khối thì chương trình con đó gọi là near. Nếu chương trình con nằm ở phần giao diện của khối thì chương trình con đó là Far

Vấn đề near/far của chương trình con Trong trường hợp ngoại lệ : Directive {$F+} : báo cho chương trình dịch TP nằm phía sau Directive {$F+} là Far. Directive {$F+} : Báo cho chương trình dịch của TP biết những chương trình con nào nằm sau Directive {$F-} là Near.

Vấn đề near/far của chương trình con Cách chương trình dịch TP tìm tệp để liên kết : Directive {$L} Cú pháp: {$L tên_tệp [.obj]} Tên hàm ASM mang giá trị trả về Nếu đặt tên vào thanh ghi AX trước khi có lệnh Ret thì tên hàm ASM mang giá trị quay về dạng 2 byte. Nếu đặt giá trị vào thanh ghi DX:AX trước khi có lệnh Ret thì tên hàm mang giá trị 4 bytes

Bài tập Bài 1 .Chỉnh sửa đoạn mã sau: program main; var k:integer;   Bài 1 .Chỉnh sửa đoạn mã sau: program main; var k:integer; procedure one(LazyEval i:integer); begin writeln(i); end; procedure two(name j:integer); begin one(j); begin {main} k := 2; two(k);

Đáp án Trong trường hợp này ,nhãn là tên chương trình con thì ASM viết chương trình con nên Pascal sẽ sử dụng chương trình con Pascal phải xin phép sử dụng như sau: Chương trình con là thủ tục có dạng: Procedure tên_thủ_tục [đối]; external; đối chiếu với ví dụ trên : Procedure one(LazyEval i:integer); Sửa: Program main; uses crt;  var ....:Integer; begin ASM procedure one(LazyEval i:integer); begin writeln(i); end; procedure two(name j:integer); begin one(j); begin {main} k := 2; two(k); END clrscr; writeln(‘’);readln(...); write(''); readln  end.