gsdgsdg
Cau1................................................................ : Trình bày cấu trúc của hệ vi xử lý
Các khối chức năng của hệ VXL gồm:
• Khối xử lý trung tâm ( central processing unit, CPU)
• Bộ nhớ bán dẫn( memory, M)
• Khối phối ghép với các thiết bị ngoại vi( input/ output, I/ O)
• Các bus truyền thông tin
Ba khối chức năng đầu tiên liên kết với nhau thông qua các bus hệ thống.
Bus hệ thống bao gồm 3 bus thành phần:
• Bus địa chỉ
• Bus dữ liệu
• Bus điều khiển
CPU: đóng vai trò chủ đạo trong hệ VXL. CPU đọc mã lệnh được ghi dưới dạng các bit 0 và 1 từ bộ nhớ sau đó giải mã lệnh thành các xung điều khiển ứng với các thao tác trong lệnh để điều khiển các khối khác thực hiện từng bước các thao tác đó
Bộ nhớ bán dẫn: ROM chứa chương trình điều khiển hoạt động của toàn hệ để khi bật điện thì CPU lấy lệnh ở đây để khởi động hệ thống. RAM chứa các chương trình ứng dụng, dữ liệu cùng các kết quả của chương trình
Khối phối ghép vào/ ra( I/ O) tạo ra khả năng giao tiếp giữa hệ VXL với các thiết bị ngoại vi như bàn phím, chuột, màn hình, máy in... , chuyển đổi số/ tương tự( D/ A converter, DAC) và chuyển đổi tương tự/ số( A/ D converter, ADC)
Bus địa chỉ thường có từ 16, 20, 24 đến 32 đường dây song song chuyền tải thông tin của các bit địa chỉ. Khi đọc/ ghi bộ nhớ CPU sẽ đưa ra trên bus này địa chỉ của ô nhớ liên quan.
Bus dữ liệu thường có từ 8, 16, 20, 24, 32 đến 64 đường dẫn tùy theo các bộ VXL cụ thể. Số đường dẫn này quyết định số bit mà dữ liệu mà CPU có khả năng xử lý cùng một lúc
Bus điều khiển gồm hàng chục đường dây tín hiệu khác nhau. Mỗi tín hiệu điều khiển có một chiều nhất định
Câu 11: ..............................................................................Xử lý đường ống (Pipeline) là gì ? Nhờ cấu trúc gì mà VXL 8088 có khả năng xử lý đường ống.
Pipeline là một cơ chế được ứng dụng từ những năm 60 trong các máy tính lớn. Cơ chế này cho phép con trỏ địa chỉ nạp một lệnh mới trong khi CPU đang thi hành một lệnh trước đó, điều này gia tăng tốc độ xử lý của CPU.
Nhờ cấu trúc xen kẽ liên tục dòng mã lệnh mà VXL 8088 có khả năng xử lý đường ống.
Câu 12:............................................................................ Ngắt là gì? Phân biệt ngắt cứng, ngắt mềm
Ngắt: là cơ chế cho phép BXL tạm thời dừng thực hiện công việc hiện tại để chuyển sang thực hiện công việc khác, gọi là chương trình con phục vụ ngắt
Phân biệt ngắt cứng, ngắt mềm
o Ngắt mềm là ngắt được gọi bằng một lệnh trong chương trình ngôn ngữ máy. Ngắt mềm được thực hiện trên hợp ngữ thông qua lệnh INT. Đối với các ngôn ngữ bậc cao hơn, vẫn cho phép thực hiện gọi ngắt nhưng phải được biên dịch thành lệnh INT trong hợp ngữ rồi mời thực hiện.
o Ngắt cứng không được khởi động bên trong máy tính mà do các linh kiện điện tử tác đông lên hệ thống. Ngắt cứng cũng được chia thành 2 loại: ngắt che được và ngắt không che được.
Câu 4: .........................................................................Trình bày các đặc điểm chung của VXL 8088/ 86. Chức năng BIU, EU?
Đặc điểm chung của VXL 8088/ 86
o Ra đời cùng thời kỳ.
o Có 40 chân, đóng gói dạng DIP
o Có 20 chân địa chỉ, 14 thanh ghi, mỗi thanh ghi có dung lượng 16 bit
BIU: chịu trách nhiệm đưa đị chỉ ra bus và trao đổi dữ liệu với bus. Trong BIU có bộ nhớ đệm dung lượng 4 byte dùng để chứa các mã lệnh đọc được nằm sẵn để chờ EU xử lý
EU: cung cấp thông tin về địa chỉ cho BIU để khối này đọc lệnh và dữ liệu, còn EU thì giải mã lệnh và thực hiện lệnh. EU gồm
o khối điều khiển CU( control unit) : có bộ giải mã lệnh. Mã lệnh được đọc vào từ bộ nhớ đưa tới đầu của bộ giải mã, các thông tin thu được từ đầu ra của bộ giải mã sẽ được đưa đến mạch tao xung điều khiển để điều khiển hoạt động của các bộ phận bên trong và bên ngoài CPU
o khối số học và logic ALU( arithmetic and logic unit): dùng thực hiện các thao tác khác nhau với các toán hạng của lệnh
Câu 3:...................................................... Trình bày sơ đồ khối của VXL 8088
Sơ đồ khối
Trình bày
BIU: chịu trách nhiệm đưa đị chỉ ra bus và trao đổi dữ liệu với bus. Trong BIU có bộ nhớ đệm dung lượng 4 byte dùng để chứa các mã lệnh đọc được nằm sẵn để chờ EU xử lý
EU: cung cấp thông tin về địa chỉ cho BIU để khối này đọc lệnh và dữ liệu, còn EU thì giải mã lệnh và thực hiện lệnh. EU gồm khối điều khiển CU( control unit) và khối số học và logic ALU( arithmetic and logic unit).
Các thanh ghi đoạn: dùng để ghi địa chỉ của một đoạn bộ nhớ
o CS( code segment) : thanh ghi đoạn mã
o DS( data segment): thanh ghi đoạn dữ liệu
o SS( stack segment): thanh ghi đoạn ngăn xếp
o ES( extra segment): thanh ghi đoạn dữ liệu phụ
Các thanh ghi đa năng: có 4 thanh ghi đa năng 16 bit: AX, BX, CX, DX. Đặc biệt là khi cần chứa dữ liệu 8 bit thì mỗi thanh ghi này có thể tách ra làm 2 thanh ghi 8 bit làm việc độc lập đó là các cặp thanh ghi: AH, AL; BH, BL; CH, CL; DH; DL (H là chỉ phần cao, L chỉ phần thấp).
o AX: thanh chứa. Dùng để chứa kết quả của các thao tác
o BX: thanh ghi cơ sở, chứa địa chỉ cơ sở của một bảng dùng trong lệnh XLAT.
o CX: bộ đếm, dùng để chứa số lần lặp trong trường hợp các lệnh LOOP
o DX: thanh ghi dữ liệu, tham gia vào các thao tác của phép nhân hoặc chia các số 16 bit
Các thanh ghi con trỏ và chỉ số: Trong VXL 8088 có 3 thanh ghi con trỏ và 2 thanh ghi chỉ số
o IP( instruction pointer) con trỏ lệnh: luôn trỏ vào lệnh tiếp theo sẽ được thực hiện nằm trong đoạn mã CS
o BP( base pointer): con trỏ cơ bản: luôn trỏ vào dữ liệu nằm trong đoạn ngăn xếp SS
o SP( stack pointer): con trỏ ngăn xếp: luôn trỏ vào đỉnh hiện thời của ngăn xếp nằm trong đoạn ngăn xếp
o SI( source index): chỉ số gốc hay nguồn
o DI( destination index): chỉ số đích
Các thanh ghi cờ
Các thanh ghi cờ trạng thái
o CF( carry flag): cờ nhớ CF=1 khi có nhớ hoặc mượn từ MSB.
o PF( parity flag): cờ parity PF=1 khi tổng số bit 1 trong kết quả là chẵn
o AF( auxiliary carry flag) : cờ nhớ phụ AF=1 khi có nhớ hoặc mượn từ một số BCD thấp sang một số BCD cao.
o ZF( zero flag) cờ rỗng ZF=1 khi kết quả bằng 0
o SF( sign flag) cờ dấu SF=1 khi kết quả là số âm
o OF( overflow flag) cờ tràn OF=1 khi kết quả là một số bù hai vượt quá giới hạn cho phép biểu diễn của nó
Các thanh ghi cờ điều khiển
o TF( trap flag): cờ bẫy, TF=1 thì CPU làm việc ở chế độ chạy từng lệnh
o IF( interrupt enable flag): cờ cho phép ngắt IF=1 thì CPU cho phép các yêu cầu ngắt được tác động
o DF( direction flag): cờ hướng DF=1 khi CPU làm việc với chuỗi kí tự từ phải sang trái
Câu 5:...................................................................................... Chu trình thực hiện lệnh của VXL 8088/ 86
VXL 8088/ 86 sử dụng cơ chế xử lý xen kẽ liên tục dòng mã lệnh thì CPU chia ra làm 2 khối và có sự phân chia công việc cho từng khối. BIU thực hiện công việc đọc mã lệnh, EU giải mã lệnh và thực hiện lệnh. Các khối này làm việc đồng thời và các bước liên tục được sử dụng: khi EU lấy mã lệnh từ bộ nhớ 4 byte để giải mã hoặc thực hiện lệnh thì BIU vẫn có thể tiếp tục đọc mã lệnh từ bộ nhớ chính rồi đặt chúng vào bộ nhớ đệm
Câu 6: ...................................................................................Các nhóm chân cơ bản của VXL 8088
Nhóm chân địa chỉ
o Truyền tín hiệu địa chỉ 1 chiều từ VXL tớ bộ nhớ hệ thống vào ra để xác định ô nhớ, I/ O cần trao đổi dữ liệu
o Có n chân địa chỉ, VXL có thể quản lý tối đa dung lượng bộ nhớ 2n byte
Nhóm chân dữ liệu( D0 - Dm-1)
Nhóm chân điều khiển
o RD : Tín hiệu điều khiển đọc dữ liệu từ bộ nhớ ,cổng I/O
o READY :tín hiệu vào thông báo bộ nhớ hoặc cổng I/O sẵn sàng làm việc .
o INTR : (interupt request ) tín hiệu vào yêu cầu ngắt che được bằng phần mềm .
o TEST : tín hiệu vào để kiểm tra bộ VXL bằng lệnh WAIT .
o NMI : đầu vào tín hiệu ngắt không che được .
o RESET : tín hiệu vào để khởi động bộ VXL ,địa chỉ khởi động FFFF0h
o CLK : Tín hiệu nhịp đưa vào cho bộ VXL lấy từ bộ phát xung nhịp 8284
o Vcc : Ðiện áp nguồn 5V.
Câu 9 :............................................. Nêu chức năng của các thanh ghi trong 8088/ 8086
BIU: chịu trách nhiệm đưa đị chỉ ra bus và trao đổi dữ liệu với bus. Trong BIU có bộ nhớ đệm dung lượng 4 byte dùng để chứa các mã lệnh đọc được nằm sẵn để chờ EU xử lý
EU: cung cấp thông tin về địa chỉ cho BIU để khối này đọc lệnh và dữ liệu, còn EU thì giải mã lệnh và thực hiện lệnh. EU gồm khối điều khiển CU( control unit) và khối số học và logic ALU( arithmetic and logic unit).
Các thanh ghi đoạn: dùng để ghi địa chỉ của một đoạn bộ nhớ
o CS( code segment) : thanh ghi đoạn mã
o DS( data segment): thanh ghi đoạn dữ liệu
o SS( stack segment): thanh ghi đoạn ngăn xếp
o ES( extra segment): thanh ghi đoạn dữ liệu phụ
Các thanh ghi đa năng: có 4 thanh ghi đa năng 16 bit: AX, BX, CX, DX. Đặc biệt là khi cần chứa dữ liệu 8 bit thì mỗi thanh ghi này có thể tách ra làm 2 thanh ghi 8 bit làm việc độc lập đó là các cặp thanh ghi: AH, AL; BH, BL; CH, CL; DH; DL (H là chỉ phần cao, L chỉ phần thấp).
o AX: thanh chứa. Dùng để chứa kết quả của các thao tác
o BX: thanh ghi cơ sở, chứa địa chỉ cơ sở của một bảng dùng trong lệnh XLAT.
o CX: bộ đếm, dùng để chứa số lần lặp trong trường hợp các lệnh LOOP
o DX: thanh ghi dữ liệu, tham gia vào các thao tác của phép nhân hoặc chia các số 16 bit
Các thanh ghi con trỏ và chỉ số: Trong VXL 8088 có 3 thanh ghi con trỏ và 2 thanh ghi chỉ số
o IP( instruction pointer) con trỏ lệnh: luôn trỏ vào lệnh tiếp theo sẽ được thực hiện nằm trong đoạn mã CS
o BP( base pointer): con trỏ cơ bản: luôn trỏ vào dữ liệu nằm trong đoạn ngăn xếp SS
o SP( stack pointer): con trỏ ngăn xếp: luôn trỏ vào đỉnh hiện thời của ngăn xếp nằm trong đoạn ngăn xếp
o SI( source index): chỉ số gốc hay nguồn
o DI( destination index): chỉ số đích
Các thanh ghi cờ
Các thanh ghi cờ trạng thái
o CF( carry flag): cờ nhớ CF=1 khi có nhớ hoặc mượn từ MSB.
o PF( parity flag): cờ parity PF=1 khi tổng số bit 1 trong kết quả là chẵn
o AF( auxiliary carry flag) : cờ nhớ phụ AF=1 khi có nhớ hoặc mượn từ một số BCD thấp sang một số BCD cao.
o ZF( zero flag) cờ rỗng ZF=1 khi kết quả bằng 0
o SF( sign flag) cờ dấu SF=1 khi kết quả là số âm
o OF( overflow flag) cờ tràn OF=1 khi kết quả là một số bù hai vượt quá giới hạn cho phép biểu diễn của nó
Các thanh ghi cờ điều khiển
o TF( trap flag): cờ bẫy, TF=1 thì CPU làm việc ở chế độ chạy từng lệnh
o IF( interrupt enable flag): cờ cho phép ngắt IF=1 thì CPU cho phép các yêu cầu ngắt được tác động
o DF( direction flag): cờ hướng DF=1 khi CPU làm việc với chuỗi kí tự từ phải sang trái
............................V/ TẬP LỆNH CỦA 8088 :
Cũng như tất cả các bộ vi xử lý khác , bộ vi xử lý 8088 có tập lệnh gồm 125 lệnh chia thành các nhóm lệnh thực hiện các công việc khác nhau như các nhóm lệnh thực hiện các phép tính toán học trên các số nguyên 8 bit hay 16 bit ,nhóm lệnh thực hiện việc di chuyển dữ liệu ,nhóm lệnh kiểm tra một giá trị để thực hiện các hoạt động logic hoặc các lệnh tiếp theo dựa trên kết quả nhận được và các lệnh thực hiện việc giao tiếp giữa bộ vi xử lý với các thiết bị ,phần tử logic ở bên ngoài . Các lệnh này và dữ liệu liên quan đến chúng sẽ được dịch ra dạng nhị phân gọi là ngôn ngữ máy, vì vậy chúng có thể lưu trong bộ nhớ và di chuyển qua các mạch điện từ để hoàn thành từng công việc cụ thể . Sau đây là bảng liệt kê một số lệnh cơ bản và chức năng từng lệnh của bộ vi xử lý 8088 :
*/ Nhóm các lệnh toán học :
AAA - Cộng có chỉnh ASCII AAD - Chia có chỉnh ASCII
AAM - Nhân có chỉnh ASCII AAS - Trừ có chỉnh ASCII
ADC - Cộng có nhớ ADD - Cộng
CWD - Chuyển từ Word sang Word kép AND - phép toán Và (logic )
DAA - Chỉnh thành thập phân cho phép cộng DEC - Giảm 1 dơn vị
DAS - Chỉnh thập phân cho phép trừ INC - tăng
DIV - Chia IDIV - Chia nguyên
MUL - Nhân NEG - Ðổi dấu
IMUL - Nhân nguyên OR - Hay , SUB - trừ
NOT - Phủ định ROL, ROR - quay trái ,phải
SHL,SHR - Dịch trái, dịch phải SBB - Trừ có mượcn
*/ Nhóm lệnh điều kiện :
CMP - So sánh CMPS - So sánh xâu
CMPSB - So sánh xâu byte CMPSW - So sánh xâu Word
JAE ,JGE - Nhảy nếu lớn hơn hoặc bằng JA, JG - Nhảy nếu lớn hơn
JBE ,JLE - Nhảy nếu nhỏ hơn hoặc bằng JB ,JL - Nhảy nếu nhỏ hơn
JPE - Nhảy nếu lỗi chẵn lẻ theo chẵn JE - Nhảy nếu bằng
JPO - Nhảy nếu lỗi chẵn lẻ theo lẻ JMP - Nhảy không điều kiện
JO , JNO - Nhảy nếu có tràn ,không tràn JC - Nhảy nếu cờ nhớ được đặt
JZ ,JNZ - Nhảy nếu bằng 0, không bằng 0
JP, JNP - Nhảy nếu có ,không có lỗi chẵn lẻ
*/Nhóm lệnh truyền số liệu :
MOV - Chuyển MOVS - Chuyển byte hay Word của xâu
MOVSB - Chuyển byte của xâu MOVSW - Chuyển Word của xâu
IN - Ðọc vào một byte hoặc Word OUT - Ðưa ra một byte hoặc Word
*/ Nhóm lệnh lặp :
LOOP - Lặp LOOPE - Lặp trong khi bằng
LOOPNE - Lặp trong khi không bằng LOOPZ - Lặp trong khi bằng 0
LOOPNZ - Lặp trong khi khác không REP - Lặp lại REPE - Lặp lại nếu bằng REPNE - Lặp lại nếu khác REPZ - Lặp lại nếu bằng 0 REPNZ - Lặp lại nếu khác không
Câu 13:...................................................................................... Địa chỉ logic (logic address): là vị trí nhớ được diễn tả trong một chương trình. Mọi tham chiếu bộ nhớ trong mã lệnh chương trình được compiler tạo ra đều là địa chỉ logic.
- Địa chỉ vật lý (physic address): là một địa chỉ thực trong bộ nhớ chính. Địa chỉ vật lý được chuyển từ địa chỉ logic khi trình biên dịch thức j hiện quá trình linking/loading.
*Phân đoạn bộ nhớ của VXL 8086/8088
- CPU 8086 dùng phương pháp phân đoạn bộ nhớ để quản lý bộ nhớ 1 MB của nó.
-Địa chỉ 20 bit của bộ nhớ 1 MB không thể chứa đủ trong các thanh ghi 16 bit của CPU 8086 vì vậy bộ nhớ 1MB được chia ra thành các đoạn 64 KB.
-Địa chỉ trong các đoạn 64KB chỉ có 16 bit nên CPU 8086 dễ dàng xử lý bằng các thanh ghi của nó.
-Như vậy phương pháp phân đoạn bộ nhớ là cách dùng các thanh ghi 16 bit để biểu diễn cho địa chỉ 20 bit.
Bạn đang đọc truyện trên: Truyen247.Pro