Kiến trúc bộ lệnh của CPU - Tìm hiểu bộ lệnh của CPU 16bit họ Intel - Các dạng dữ liệu

21 504 3
Kiến trúc bộ lệnh của CPU - Tìm hiểu bộ lệnh của CPU 16bit họ Intel - Các dạng dữ liệu

Đ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

Copyright © 2006, HaiVDC 1 Kiến trúc bộ lệnh của CPU Các dạng dữ liệu Tìm hiểu bộ lệnh của CPU 16bit họ Intel Copyright © 2006, HaiVD C 2 Dạng byte – 8 bit  Có thể biểu diễn dạng:  Số nguyên không dấu 8bit  Có giá trị từ 0  2 8 -1=255  Số nguyên có dấu bit dấu  Có giá trị từ: -2 7  2 7 -1 (-128 127) 01234567 0: Số dương 1: Số âm Copyright © 2006, HaiVD C 3 Dạng byte  1 ký tự theo bảng mã ASCII  ‘a’  97 = 61Hex = 01100001  ‘A’  65 = 41Hex = 01000001 Copyright © 2006, HaiVD C 4 Dạng byte  Ví dụ cho dạng byte 10111000  Số nguyên không dấu tương ứng  10111000 = 128 + 32 + 16 + 8 = 184  Số nguyên có dấu (xét bit dấu = bit 7 = 1)  Lấy bù: 01000111 + 1 01001000 = 64 + 8 = 72 Số nguyên có dấu là: -72 Nhận xét: 256 – 184 = 72 Copyright © 2006, HaiVD C 5 Dạng word – 16 bit  Có thể biễu diễn dạng:  Số nguyên không dấu 16bit:  Có giá trị: 0  2 16 -1=65535  Số nguyên có dấu 16bit  Có giá trị: -2 15 2 15 -1 (3276832767)  word = (byte cao)x2 8 + (byte thấp)  byte cao = word / 2 8  byte thấp = word % 2 8 89101112131415 01234567 8 bit cao (byte cao) 8 bit thấp (byte thấp) bit dấu = bit cao nhất = bit 15 Copyright © 2006, HaiVD C 6 Dạng word  Ví dụ: xét word 1010110111011000  Số nguyên không dấu tương ứng 1010110111011000 = 10x16 3 +13x16 2 +13x16+8=44504 A D D 8 Hex 16 3 16 2 16 1 16 0  Số nguyên có dấu: Xét bit dấu = bit 15 = 1  Lấy bù: 0101001000100111 + 1 0101001000101000 = 5x16 3 +2x16 2 +2x16+8 = -21032 Nhận xét: 2 16 -44504=21032 word/16 = 0000101011011101  dịch phải 4 bit word%16 = 1000 = 8 Copyright © 2006, HaiVDC 7 Kiến trúc bộ lệnh của CPU Tổ chức bộ nhớ Copyright © 2006, HaiVD C 8 Tổ chức bộ nhớ phẳng  Bộ nhớ gồm 1 dãy các ô nhớ được đánh địa chỉ theo thứ tự tăng dần bắt đầu từ 0.  Mỗi ô nhớ chứa 1 byte thông tin  Bộ nhớ gồm n ô nhớ 0 1 2 3 4 5 6 7 8 n-1 Nếu n lớn  Không gian địa chỉ lớn  khó quản lý Copyright © 2006, HaiVD C 9 Tổ chứ bộ nhớ theo Segment  Bộ nhớ chia thành các đoạn, mỗi đoạn gọi là 1 Segment  Địa chỉ bắt đầu của 1 đoạn gọi là địa chỉ Segment 0 1 2 3 4 5 6 7 8 0 1 2 3 4 0 1 2 3 1 s e g m e n t đ/c segment đ/c segment đ/c segment đ/c offset Các ô nhớ trong segment được đánh địa chỉ theo tứ tự tăng dần và bắt đầu từ 0 được gọi là địa chỉ offset Copyright © 2006, HaiVD C 10 Phân loại địa chỉ  Đ/c vật lý là đ/c của ô nhớ trong tổ chức bộ nhớ phẳng  Đ/c logic là đ/c gồm: đ/c segment + đ/c offset  Nhận xét:  Chương trình (các lệnh CPU) luôn dùng đ/c logic để truy xuất bộ nhớ  Khi truy xuất bộ nhớ CPU sẽ chuyển đổi đ/c logic sang đ/c vật lý để truy xuất bộ nhớ  Ký hiệu đ/c logic: segment:offset [...].. .Kiến trúc bộ lệnh của CPU Thanh ghi - Register Copyright © 2006, HaiVDC 11 Thanh ghi là gì?     Thanh ghi là bộ nhớ bên trong CPU Thanh ghi dùng để chứa các thông tin mà CPU sẽ sử dụng, hay xử lý CPU có nhiều thanh ghi, mỗi thanh ghi có 1 tên biểu thị (tên thanh ghi) Số lượng và kích thước thanh ghi phụ thuộc vào loại CPU Copyright © 2006, HaiVD 12 Nhóm các thanh ghi đa dạng    ... chỉ segment dữ liệu thứ 2 nếu có Copyright © 2006, HaiVD 17 Nhóm các thanh ghi Segment Gồm 4 thanh ghi 16bit có tên: CS, DS, SS, ES Chứa địa chỉ Segment của 1 đoạn  Copyright © 2006, HaiVD 18 Thanh ghi IP (Intruction pointer)    Thanh ghi con trỏ lệnh IP xác định đ/c offset của lệnh kế tiếp trong đoạn mã lệnh sẽ được CPU thi hành Cặp thanh ghi CS:IP = đ/c lệnh kế tiếp trong bộ nhớ mà CPU thi hành... đầu của vùng nhớ nguồn (chuỗi nguồn) DI (Destination Index) chỉ số đích thường dùng để xác định đ/c offset bắt đầu của vùng nhớ đích (chuỗi đích) Copyright © 2006, HaiVD 16 Nhóm các thanh ghi con trỏ/chỉ mục      Có 4 loại segment: CS, DS, SS, ES CS (Code Segment) chứa địa chỉ segment của đoạn mã lệnh DS (Data Segment) chứa địa chỉ segment của dữ liệu SS (Stack Segment) chứa địa chỉ segment của. .. first out) Stack là vùng nhớ dùng để lưu các dữ liệu tạm thời khi CPU thực hiện chương trình     Thao tác cơ bản:    Địa chỉ trở về Các trị của tham số hàm Biến cục bộ Push: lưu vào Pop: lấy ra Thanh ghi SP dùng để xác định đỉnh stack Copyright © 2006, HaiVD 15 Nhóm các thanh ghi con trỏ/chỉ mục    BP (Base pointed) thường dùng làm con trỏ để truy xuất các phần tử trong stack SI (Source Index)... (Data Register) thanh ghi dữ liệu Copyright © 2006, HaiVD 13 Thể hiện các thanh ghi đa dạng AX = AH|AL; BX = BH|BL; CX = CH|CL; DX = DH|DL 16bit 8bit cao|8 bit thấp  Ví dụ: AX = 10111101|10101011 AH AL BX = 7EAB Hex  byte cao byte thấp BH BL DX = 10008 thập phân DH = 39 = 10008/28 DL = 24 = 10008%28 Copyright © 2006, HaiVD 14 Nhóm các thanh ghi con trỏ/chỉ mục   Gồm 4 thanh ghi 16bit có tên SP, BP,... hành Cặp thanh ghi CS:IP = đ/c lệnh kế tiếp trong bộ nhớ mà CPU thi hành Copyright © 2006, HaiVD 19 Thanh ghi cờ (flag)   Là thanh ghi 16 bit chứa các thông tin trạng thái hiện thời của CPU (vd: trạng thái tràn của phép toán vừa thực hiện) Thanh ghi cờ gồm các cờ, mỗi cờ dùng 1 bit    Cờ bật có giá trị 1 Cờ tắt có giá trị 0 Một số cờ: CF, ZF, SF, OF, AF, PF, DF, IF, Copyright © 2006, HaiVD 20 Thanh... dấu CF=1 khi kết quả phép toán vừa thực hiện có nhớ (phép cộng) hay có mượn (phép trừ)  Đối với số không dấu:      Phép cộng: CF=1 cộng bị tràn, CF=0 không bị tràn Phép trừ: CF=1 số nhỏ - số lớn, CF=0 số lớn - số nhỏ ZF (Zero flag)=1 khi kết quả phép toán vừa thực hiện là zero SF (Signed flag)=1 khi kết quả phép toán vừa thực hiện là 1 số âm OF (Overflow flag) cờ tràn chỉ dùng với số có dấu OF=1 . 1 Kiến trúc bộ lệnh của CPU Các dạng dữ liệu Tìm hiểu bộ lệnh của CPU 16bit họ Intel Copyright © 2006, HaiVD C 2 Dạng byte – 8 bit  Có thể biểu diễn dạng: . 2006, HaiVDC 11 Kiến trúc bộ lệnh của CPU Thanh ghi - Register Copyright © 2006, HaiVD C 12 Thanh ghi là gì?  Thanh ghi là bộ nhớ bên trong CPU  Thanh ghi

Ngày đăng: 24/06/2013, 01:25

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan