1. Trang chủ
  2. » Giáo án - Bài giảng

Tổ chức cấu trúc máy tính C6

12 196 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 12
Dung lượng 320,28 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Nguồn 1 Chương trình nguồn .ASM MASM.EXE Mã đối tượng .OBJ Liệt kê .LST Tham khảo chéo .CRF LINK.EXE Mã thực thi .EXE Mã thực thi .COM Bản đồ .MAP Chương trình dịch hợp ngữ Chương

Trang 1

CHƯƠNG 6

Hợp ngữ

Trang 2

Nguồn 1 Chương trình

nguồn (.ASM)

MASM.EXE

Mã đối tượng (.OBJ) Liệt kê (.LST)

Tham khảo chéo (.CRF)

LINK.EXE

Mã thực thi (.EXE)

Mã thực thi (.COM) Bản đồ (.MAP)

Chương trình dịch hợp ngữ

Chương trình liên kết

Chương trình thực thi COM

Chương trình thực thi EXE

Trang 3

Trị mặc nhiên : Chương trình nguồn Source.ASM

Tâp tin đối tượng Source.OBJ

Bản liệt kê chương trình NUL.LST Tập tin tham khảo chéo NUL.CRF

Trị mặc nhiên :

Tập tin đối tượng objects.OBJ Chương trình thực thi object1.COM

Bản đồ sử dụng bộ nhớ NUL.MAP Tập tin thư viện name.LIB

Trang 4

Chương trình nguồn :

* Là tập tin văn bản (.ASM): Filename.ASM

* Dạng lệnh : [<nhãn>] <mã lệnh> <thông số> ;<chú thích>

* Các ký tự dùng để đặt tên cho nhãn : a - z A - Z 0 - 9 ? @ _ $

và bắt đầu bằng một ký tự khác số

* Số hệ 2 : ××××××××××××××××××××××××××××××××B (10110101B)

* Số hệ 8 : ××××××××××××Q hoặc ××××××××××××O (123Q, 705O)

* Số hệ 10 : mặc định hoặc ××××××××××××××××××××D (32767, 4509D)

* Số hệ 16 : ××××××××××××××××H và bắt đầu bằng số (1A97H, 0E05BH)

Trang 5

Biến

Hằng

Nhãn

- Do người sử dụng đặt

- Không phân biệt chữ lớn

chữ nhỏ

- Chiều dài tùy ý nhưng chi

có 31 ký tự đầu có nghĩa 

Tên

NEAR FAR 

BYTE

WORD

DWORD

QWORD

TBYTE 

ABS 

Thay địa chỉ bộ nhớ

Để chứa dữ liệu 

<tên>:

<tên> LABEL <thuộc tính nhãn>

<tên> PROC [<thuộc tính>]

<tên> ENDP EXTRN <tên>:<thuộc tính nhãn>[, ]

<tên> Dx <biểu thức> [, ]

<tên> <tên cấu trúc> <biểu thức>

<tên> <tên máu tin> <biểu thức>

<tên> LABEL <thuộc tính biến>

EXTRN <tên>:<thuộc tính biến>[, ]

<tên> EQU <biểu thức>

<tên> = <biểu thức>

EXTRN <tên>:ABS [, ]

Thay địa chỉ bộ nhớ

Để đánh dấu vị trí 

Thay cho giá trị 

Trang 6

Biểu thức

tên

hằng

(địa chỉ) 

biến

(địa chỉ) 

trị tức thời 

số

ký tự 

Toán hạng

Toán tử 

Thay đổi thuộc tính : PTR, :, SHORT, THIS, HIGH, LOW

Trả trị : SEG, OFFSET, TYPE, LENGTH, SIZE

Mẫu tin : số dịch, MASK, WIDTH

Số học : + - ∗∗∗∗ / MOD SHR SHL

Quan hệ : EQ, NE, LT, LE, GT, GE

Luận lý : NOT, AND, OR, XOR

Các toán tử

có độ ưu tiên

Trang 7

DOSSEG

.model small

.stack <Số byte>

.data

<Các khai báo biến và hằng>

.code

main proc

<Thân chương trình chính>

<Kết thúc, trở về DOS>

main endp

<Các khai báo chương trình con>

end

title <Tên chương trình>

code segment para public 'code'

assume cs:code,ds:code,ss:code

<Các chương trình con>

main proc

<Thân chương trình chính>

<Kết thúc, trở về DOS>

main endp

<Các chương trình con>

code ends data segment para public 'data'

<Các khai báo biến và hằng>

data ends stack segment stack 'stack'

<Khai báo vùng đệm>

stack ends

end main

Dạng chương trình

Trang 8

<tên> SEGMENT [<align>] [<combine>] [ '<class>']

<thân segment>

<tên> ENDS

<align> Địa chỉ bắt đầu

BYTE XXXX xxxx (1 byte)

WORD XXXX xxx0 (2 byte)

DWORD XXXX xx00 (4 byte)

PARA XXXX 0000 (16 byte)

PAGE XXX0 0000 (256 byte)

 X4 bit x1 bit

0 1 2 3 4 5 6 7 8 9 A B C D E F

Bộ nhớ BYTE

WORD DWORD PARA & PAGE

A

B

B

A

0

COMMON

0

0

PUBLIC

A

B

AB

0

0

0

Không có

0

0

0 0

A

B

A

B

Trang 9

ASSUME <thanh ghi đoạn>:<tên>[, ]

<tên> PROC [NEAR / FAR]

<thân chương trình>

<tên> ENDP

Kết thúc chương trình

mov AX,4C00h int 21h

hoặc

chính

ret

con

iret

con phục vụ ngắt quãng

1.Tên chương trình

Tiêu đề

2.Chương trình làm gì ?

3.Các thông số vào - ra

4.Các thanh ghi bị đổi nội dung

assume CS:code,DS:code,SS:code Giả định cho COM

assume CS:code,DS:data,SS:stack

Giả định cho EXE

Trang 10

1 Các mô đun phụ trong một chương

trình có nhiều mô đun

2 Tạo thư viện

3 Tạo dữ liệu

END [<biểu thức>]

Các trường hợp không có địa chỉ bắt đầu

<tên biến> Dx <biểu thức>[,<biểu thức> .]

<tên hằng> EQU <biểu thức hằng>

<tên hằng> = <biểu thức hằng>

<tên > LABEL <thuộc tính>

Xem lại mục "tên"

Trang 11

<tên> GROUP <tên đoạn>[, .] PUBLIC <tên>[, .]

EXTRN <tên>:<thuộc tính>[, .]

dgroup GROUP data1,data2,data3

ASSUME DS:dgroup

INCLUDE <tên tập tin>

COMMENT <dấu ngăn>

<chú thích không cần chấm phẩy>

<dấu ngăn> <chú thích không cần chấm phẩy>

@

Trang 12

<tên> MACRO [<thông số hình thức>, ]

ENDM

<tên macro> <thông số thực> , EXITM

LOCAL <tên> [, ]

PURGE <tên macro> [, ]

REPT <biểu thức>

ENDM

IRP <thông số>, <danh sách các trị trong ngoặc nhọn>

ENDM

IRPC <thông số>,<string>

ENDM

Các toán tử

&<thông số>

% (Biểu thức)

;;<chú thích>

!<ký tự>

< văn bản>

Chỉ thị Macro

Ngày đăng: 12/08/2015, 09:32

TỪ KHÓA LIÊN QUAN