tailieunhanh - Giáo trình Ngôn ngữ lập trình Assembly (dùng trong các trường THCN): Phần 2

Nối tiếp nội dung phần 1 cuốn giáo trình "Ngôn ngữ lập trình Assembly (dùng trong các trường THCN)", phần 2 giới thiệu tới người học các kiến thức: Liên kết Assembly với ngôn ngữ Pascal, các bài toán lập trình. Phần phụ lục trình bày các ngắt của Bios và DOS. . | Chương 3 LIÊN KẾT ASSEMBLY VỚI NGÔN NGỮ PASCAL Có hai cách liên kết giữa ngôn ngữ Pascal và Assembly Cách 1 Chèn các khối lệnh Assembly vào chương trình được viết bằng ngôn ngữ Pascal - inline Assembly. Đây là phương pháp khá đơn giản và nhanh vì với từ khoá asm và được kết thúc bằng end chúng ta có thể dễ dàng đưa một khối các lệnh của Assembly vào giữa các dòng lệnh của Pascal. Tuy nhiên phương pháp này có một sô hạn chê mà chúng ta sẽ đề cập ở phần sau. Cách 2 Viết tách biệt các module -bằng ngôn ngữ Pascal và -bằng Assembly. sau đó tiến hành dịch và liên kết chúng lại với nhau. So với cách 1 cách này sẽ phức tạp hơn cho người lập trình song sẽ tránh được những nhược điểm mà cách 1 gặp phải. I. ASSEMBLY TRONG PASCAL Trong phương pháp này chúng ta đặt các lệnh Assembly vào các dòng trong chương trình dược viết bằng ngôn ngữ Pascal tại nơi nào mà chúng ta thấy cần thiết. Dạng tổng quát của Assembly trong chương trình viết bằng Pascal như sau asm khối các lệnh Assembly end Mỗi khi chương trình dịch của Pascal gặp từ khoá asm trong dòng lệnh 75 Assembly thì chương trình dịch sẽ chuyển dòng lệnh Asembler này vào và dịch với việc quy chiếu biến Pascal ra dạng tương ứng cúa Assembly để thực hiện. Chúng ta hãy xem xét cơ chế liên kết theo cách này thông qua một ví dụ đơn giản. Ví dụ Hãy viết chương trình nhập từ bàn phím một số và cất vào một biên bằng Pascal sau đó giảm giá trị của biến đó đi 1 bằng Assembly và hiện màn hình bằng Pascal với tên tệp là . PROGRAM baitap uses Crt var x integer BEGIN clrscr write Hay vao gia tri cua x read x asm mov AX x dec AX mov X AX end writein Ket qua cua X la x readln END. Tiến hành dịch như sau tpc đánh ENTER Pascal gặp từ khoá asm và lúc này biến X của Pascal sẽ được chuyển sang biến tương ứng của Assembly và được đặt vào thanh ghi AX. Nói một cách ngắn gọn là từ khoá asm cho phép chúng ta nhét bất kỳ một dòng lệnh Assembly vào chương trình đang được viết bằng ngôn ngữ Pascal. 76 Cách liên kết này khá đơn giản .

TỪ KHÓA LIÊN QUAN