Thắc mắc về cách lập địa chỉ của CPU 8080?

*In 1974, 16 address lines was aggressive, because memory was extremely expensive, and most machines had 4K or 8K bytes

*Sixteen address lines will address 64K bytes

*you put a 16-bit address out on the address lines, and you got back the 8-bit value that was stored at that address.

Phần này mình hiểu và thắc mắc như sau:

CPU 8080 có 16 address lines.Nghĩa là CPU dùng địa chỉ 16-bit để đọc và ghi dữ liệu trong memory.Do đó,ta lập được 65536 (0FFFFh) địa chỉ.Với mỗi địa chỉ ta lấy ra được 1 byte.Nhưng memory lúc này không hơn 8K bytes.

Vậy với cách lập địa chỉ trên,1 memory 8K bytes sẽ được đánh các địa chỉ từ 0(0h) đến 8191(01FFFh).Thế còn các địa chỉ từ 8192(2000h) đến 65536(0FFFFh) dùng để làm gì ?

Lật sang trang sau,mình lại thấy 1 cái hình làm mình thắc mắc hơn :

Hệ điều hành CP/M-80 thường kết thúc ở địa chỉ 16K(4000h),32K(8000h) hoặc 48K(C000h).Trong khi memory chỉ vỏn vẹn 8K bytes ?

Mọi người giúp mình giải đáp thắc mắc với !

8K là kể chuyện thôi, hình này ý nói là CP/M luôn nạp ở địa chỉ cao nhất, user nạp ở địa chỉ thấp nhất.

Câu hỏi tìm hiểu: vì sao phải đặt ở hai đầu? :slight_smile:

1 Like
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?