Download as xlsx, pdf, or txt
Download as xlsx, pdf, or txt
You are on page 1of 2

TO-DO LI

Tên Nội dung cần tìm


Khái niệm và phân loại kiến trúc tập lệnh (Instruction Set
Lê Vũ Phát Đạt
Tìm hiểu về địa chỉ bộ nhớ

Mã hoá tập lệnh

Nguyễn Văn Thanh Tú


Các nhóm lệnh

Cấu trúc lệnh CISC và RISC


Phạm Thái Thuận
Kết luận

Ví dụ về một chương trình Assembly đơn giản.


Jung Minh Tiền Có thể đi tìm hiểu chương trình này hoặc mở rộng nó ra.
Nhưng phải đảm bảo giải thích được nó
TO-DO LIST
Ví dụ/mô tả nội dung
- Kiểu kiến trúc GPR (General Purpose Register): Sử dụng thanh ghi đa năng để lưu các toán hạng và kết quả tính toán. Ví d
- Kiểu kiến trúc thanh ghi đa dụng: Mỗi thanh ghi có chức năng riêng, không dùng chung. Ví dụ như kiến trúc ARM.
- Địa chỉ vật lý: Chỉ vị trí thực tế của byte trong bộ nhớ vật lý.
- Địa chỉ ảo: Địa chỉ do hệ điều hành ánh xạ từ không gian người dùng sang không gian vật lý.
- Địa chỉ tuyến tính/không tuyến tính: Địa chỉ tuyến tính liên tục, địa chỉ không tuyến tính có thể bị gián đoạn.
- Các tiêu chuẩn thiết kế dạng thức lệnh: Định dạng, số lượng và chức năng của các trường trong lệnh.
- Opcode mở rộng: Mở rộng khả năng biểu diễn các lệnh.
- Các chế độ lập địa chỉ: Tương đối, tuyệt đối, kết hợp.
- Nhóm lệnh cơ sở: gán giá trị, nhảy điều kiện.
- Nhóm lệnh tính toán số học: cộng, trừ, nhân, chia.
- Nhóm lệnh logic: AND, OR, NOT, XOR.
- Nhóm lệnh dịch, quay: dịch bit, dịch byte, xoay bit.
- Nhóm lệnh có điều kiện và nhảy: nhảy điều kiện, so sánh.
- CISC: Tập lệnh phong phú, nhiều chức năng phức tạp. Ví dụ x86.
- RISC: Tập lệnh đơn giản, các lệnh cơ bản. Ví dụ ARM.
- Tập lệnh và địa chỉ là hai khái niệm cơ bản của kiến trúc máy tính.
- Hiểu rõ về chúng giúp lập trình viên tối ưu hóa code và tận dụng tốt phần cứng.

asm
SECTION .text
GLOBAL main
main:
MOV EAX, 25 ; gán 25 vào thanh ghi EAX
ADD EAX, 35 ; cộng EAX với 35
SUB EAX, 10 ; trừ EAX cho 10
MOV EBX, EAX ; chuyển kết quả vào EBX
cmp EBX, 0 ; so sánh EBX với 0
jg label1 ; nhảy nếu EBX lớn hơn 0
jmp label2 ; nhảy tới label2
label1:
; thực hiện các câu lệnh ở đây nếu điều kiện đúng
label2:
; kết thúc chương trình

You might also like