Tài liệu đồ án vi mạch hệ vi xử lý 8085A, chương 5 docx

11 308 1
Tài liệu đồ án vi mạch hệ vi xử lý 8085A, chương 5 docx

Đ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

Chương 5: Cấu trúc Vi xử 8085A Cấu tạo Vi xử 8085A gồm 3 phần: Đơn vò số học-logic, các thanh ghi và đơn vò điều khiển. Các thanh ghi trong 8085A được chia ra như sau: Bộ đếm chương trình (PC) và con trỏ ngăn xếp (SP): là hai thanh ghi có độ dài 16 bit nên Vi xử có thể truy xuất được một lượng ô nhớ là 2 16 = 65536 byte hay 64Kbyte. Bộ tích lũy (Accummulator): Có ký hiệu là A, độ dài 8 bit. Đây là thanh ghi quan trọng nhất trong Vi xử lý, hầu hết các quá trình tính toán đều xảy ra trên thanh ghi này. Thanh ghi trạng thái (Status Register): Có tên khác là thanh ghi cờ (Flag), ký hiệu là F, thanh ghi này có độ dài 8 bit trong đó5 bit trạng thái dùng để phản ánh trạng thái của Vi xử khi thực hiện xong một lệnh. S Z x A C x P x C y S - Sign (bit dấu) S = 1 Khi kết quả là số âm. S = 0 Khi kết quả là số dương. Z - Zero (bit zero) Z = 1 Khi kết quả bằng 0. Z = 0 Khi kết quả khác 0. AC - Auxiliary Carry (bit số nhớ phụ) AC = 1 Khi phép tính bò tràn trên bit 3. AC = 0 Khi phép tính không tràn trên bit 3. P - Parity (bit chẵn lẻ) P = 1 Khi kết quả là số chẵn. P = 0 Khi kết quả là số lẻ. Số chẵn là số có tổng số bit [1] là chẵn, và ngược lại số lẻ là số có tổng số bit [1] là lẻ. Cy - Carry (bit số nhớ) Cy = 1 Khi kết quả có số nhớ. Cy = 0 Khi kết quả không số nhớ. Các thanh ghi công dụng chung: Gồm 6 thanh ghi có độ dài 8 bit được ký hiệu lần lượt là B, C, D, E, H và L. Các thanh ghi này có thể kết hợp thành từng cặp 16 bit: BC, DE, HL và AF, trong đó A, B, D và H là các thanh ghi cao và F, C, E và L là các thanh ghi thấp. II. TẬP LỆNH 8085A: Tập lệnh của 8085A được chia thành các nhóm như sau: - Nhóm lệnh truyền dữ liệu - Nhóm lệnh số học - logic - Nhóm lệnh so sánh - Nhóm lệnh nhảy - Nhóm lệnh về ngăn xếp - Nhóm lệnh về xuất nhập - Nhóm lệnh điều khiển 1. Nhóm lệnh truyền dữ liệu: MOV ds, sr Truyền dữ liệu từ thanh ghi sr đến thanh ghi ds. MOV ds, M Truyền dữ liệu từ ô nhớ có đòa chỉ chứa trong cặp thanh ghi HL vào thanh ghi ds. MOV M, sr Truyền dữ liệu từ thanh ghi sr vào ô nhớ có đòa chỉ chứa trong cặp thanh ghi HL. MVI ds, data Truyền tức thời dữ liệu 8 bit vào thanh ghi ds. MVI M, data Truyền tức thời dữ liệu 8 bit vào ô nhớ có đòa chỉ chứa trong cặp thanh ghi HL. LXI r p , dw Nạp tức thời dữ liệu 16 bit vào cặp thanh ghi r p . LDA addr Nạp trực tiếp nội dung ô nhớ có đòa chỉ là addr vào thanh ghi A. LDAX r p Nạp gián tiếp nội dung ô nhớ có đòa chỉ chứa trong cặp thanh ghi r p vào thanh ghi A. LHLD addr Nạp trực tiếp nội dung ô nhớ có đòa chỉ là addr vào thanh ghi L, nội dung ô nhớ có đòa chỉ addr+1 vào thanh ghi H. STA addr Lưu trữ trực tiếp nội dung thanh ghi A vào ô nhớ có đòa chỉ addr. STAXr p Lưu trữ gián tiếp nội dung thanh ghi A vào ô nhớ có đòa chỉ chứa trong cặp thanh ghi r p . SHLD addr Lưu trữ trực tiếp nội dung thanh ghi L vào ô nhớ có đòa chỉ addr, nội dung thanh ghi H vào ô nhớ có đòa chỉ addr+1. XCHG Hoán chuyển nội dung giữa cặp thanh ghi HL với cặp thanh ghi DE. 2. Nhóm lệnh số học - logic: ADD sr Cộng không lưu ý số nhớ nội dung thanh ghi A với nội dung thanh ghi sr. ADD M Cộng không lưu ý số nhớ nội dung thanh ghi A với nội dung ô nhớ có đòa chỉ chứa trong cặp thanh ghi HL. ADI data Cộng không lưu ý số nhớ nội dung thanh ghi A với dữ liệu. ADC sr Cộng có lưu ý số nhớ nội dung thanh ghi A với nội dung thanh ghi sr. ADC M Cộng có lưu ý số nhớ nội dung thanh ghi A với nội dung ô nhớ có đòa chỉ chứa trong cặp thanh ghi HL. ACI data Cộng có lưu ý số nhớ nội dung thanh ghi A với dữ liệu. SUB sr Trừ không lưu ý số thiếu nội dung thanh ghi A với nội dung thanh ghi sr. SUB M Trừ không lưu ý số thiếu nội dung thanh ghi A với nội dung ô nhớ có đòa chỉ chứa trong cặp thanh ghi HL. SUI data Trừ không lưu ý số thiếu nội dung thanh ghi A với dữ liệu. SBB sr Trừ có lưu ý số thiếu nội dung thanh ghi A với nội dung thanh ghi sr. SBB M Trừ có lưu ý số thiếu nội dung thanh ghi A với nội dung ô nhớ có đòa chỉ chứa trong cặp thanh ghi HL. SBI data Trừ có lưu ý số thiếu nội dung thanh ghi A với dữ liệu. ANA sr AND giữa nội dung thanh ghi A với nội dung thanh ghi sr. ANA M AND giữa nội dung thanh ghi A với nội dung ô nhớ có đòa chỉ chứa trong cặp thanh ghi HL. ANI data AND giữa nội dung thanh ghi A với dữ liệu. ORA sr OR giữa nội dung thanh ghi A với nội dung thanh ghi sr. ORA M OR giữa nội dung thanh ghi A với nội dung ô nhớ có đòa chỉ chứa trong cặp thanh ghi HL. ORI data OR giữa nội dung thanh ghi A với dữ liệu. XRA sr EXOR giữa nội dung thanh ghi A với nội dung thanh ghi sr. XRA M EXOR giữa nội dung thanh ghi A với nội dung ô nhớ có đòa chỉ chứa trong cặp thanh ghi HL. XRI data EXOR giữa nội dung thanh ghi A với dữ liệu. INR reg Tăng nội dung thanh ghi reg. INR M Tăng nội dung ô nhớ có đòa chỉ chứa trong cặp thanh ghi HL. DCR reg Giảm nội dung thanh ghi reg. DCR M Giảm nội dung ô nhớ có đòa chỉ chứa trong cặp thanh ghi HL. INX r p Tăng nội dung cặp thanh ghi r p . DCX r p Giảm nội dung cặp thanh ghi r p . RRC Đẩy nội dung thanh ghi A về phía phải. RLC Đẩy nội dung thanh ghi A về phía trái. RAR Đẩy nội dung thanh ghi A về phía phải ngang qua cy. RAL Đẩy nội dung thanh ghi A về phía trái ngang qua cy. DAD r p Cộng nội dung cặp thanh ghi HL với nội dung cặp thanh ghi r p . DAA Điều chỉnh nội dung bộ tích lũy A. CMA Nghòch đảo nội dung bộ tích lũy A. STC Đặt bit cy là [1]. CMC Nghòch đảo bit cy. 3. Nhóm lệnh so sánh: CMP sr So sánh nội dung thanh ghi A với nội dung thanh ghi sr. CMP M So sánh nội dung thanh ghi A với nội dung ô nhớ có đòa chỉ chứa trong cặp thanh ghi HL. CPI data So sánh nội dung thanh ghi A với dữ liệu. 4. Nhóm lệnh nhảy: JMP addr Nhảy đến đòa chỉ addr không điều kiện. J condition addr Nhảy đến đòa chỉ addr nếu thỏa điều kiện: - JNZ Z = 0 - JZ Z = 1 - JNC Cy = 0 - JC Cy = 1 - JPO P = 0 - JPE P = 1 - JP S = 0 - JM S = 1 CALLaddr Gọi chương trình con tại đòa chỉ addr. C condition addr Gọi chương trình con tại đòa chỉ addr nếu thỏa điều kiện: - CNZ Z = 0 - CZ Z = 1 - CNC Cy = 0 - CC Cy = 1 - CPO P = 0 - CPE P = 1 - CP S = 0 - CM S = 1 RET Trở về từ chương trình con không điều kiện. R condition Trở về từ chương trình con nếu thỏa điều kiện: - RNZ Z = 0 - RZ Z = 1 - RNC Cy = 0 - RC Cy = 1 - RPO P = 0 - RPE P = 1 - RP S = 0 - RM S = 1 RST c Gọi chương trình phục vụ ngắt số hiệu c. PCHL Nạp bộ đếm chương trình PC từ cặp thanh ghi HL. 5. Nhóm lệnh về ngăn xếp: PUSHr p Chuyển dữ liệu của cặp thanh ghi r p vào ngăn xếp. POP r p Lấy dữ liệu từ ngăn xếp chuyển vào cặp thanh ghi r p . XTHL Hoán chuyển dữ liệu giữa ngăn xếp với cặp thanh ghi HL. SPHL Chuyển nội dung cặp thanh ghi HL vào thanh ghi SP. 6. Nhóm lệnh xuất nhập: IN port Nhập dữ liệu từ cổng port vào thanh ghi A. OUT port Xuất dữ liệu từ thanh ghi A ra cổng port. 7. Nhóm lệnh điều khiển: NOP Lệnh trống. HLT Lệnh dừng chương trình cho đến khi có lệnh ngắt hoặc RESET. EI Cho phép yêu cầu ngắt. DI Không cho phép yêu cầu ngắt. 8. Nhóm lệnh đặc biệt: SIM Lệnh này sử dụng các bit trong thanh ghi A để thực hiện các công việc sau: SO D SO E x R 7.5 MS E M 7.5 M 6.5 M 5.5 M 7.5 - M 6.5 - M5.5 = [0]: Cho phép yêu cầu ngắt. = [1]: Ngăn yêu cầu ngắt. MSE = [0]: Các bit từ 0 đến 2 của thanh ghi A có tác dụng. = [1]: Các bit từ 0 đến 2 của thanh ghi A không tác dụng. RST 7.5 = [0]: Không ảnh hưởng. = [1]: Reset Flip Flop RST 7.5 SOE = [0]: Bit thứ 7 của thanh ghi A không gửi ra ngõ SOD. = [1]: Bit thứ 7 của thanh ghi A được gửi ra ngõ SOD. SOD : Chứa dữ liệu cần gửi đến ngõ ra nối tiếp SOD. RIM Kết quả của lệnh RIM sau khi thực hiện được trả lại trong thanh ghi A cho biết các trạng thái sau: SI D I 7.5 I 6.5 I 6.5 IE M 7.5 M 6.5 M 5.5 M 7.5 - M 6.5 - M 5.5 = [0]: Yêu cầu ngắt bò ngăn. = [1]: Yêu cầu ngắt được phép. IE = [0]: Vi xử không chấp nhận yêu cầu ngắt. = [1]: Vi xử chấp nhận yêu cầu ngắt. I 7.5 -I 6.5 - I 5.5= [0]: Cho biết không có yêu cầu ngắt. = [1]: Cho biết yêu cầu ngắt đang chờ. SID : Chứa dữ liệu của ngõ vào nối tiếp SID. . sau: SI D I 7 .5 I 6 .5 I 6 .5 IE M 7 .5 M 6 .5 M 5. 5 M 7 .5 - M 6 .5 - M 5. 5 = [0]: Yêu cầu ngắt bò ngăn. = [1]: Yêu cầu ngắt được phép. IE = [0]: Vi xử lý không. Chương 5: Cấu trúc Vi xử lý 8085A Cấu tạo Vi xử lý 8085A gồm 3 phần: Đơn vò số học-logic, các thanh ghi và đơn vò điều khiển. Các thanh ghi trong 8085A

Ngày đăng: 21/01/2014, 19:20

Từ khóa liên quan

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

Tài liệu liên quan