Giao tiếp giữa máy tính với KIT vi xử lý 8086 part3 pdf

10 448 1
Giao tiếp giữa máy tính với KIT vi xử lý 8086 part3 pdf

Đang tải... (xem toàn văn)

Thông tin tài liệu

Cờ nhớ CF được thiết lập khi có số nhớ từ bit MSB. Trong phép cộng hoặc số thiếu trong phép trừ (MSB trong các lệnh byte là bit 7 và trong các lệnh word là bit 15) cờ CF cũng bò ảnh hưởng bởi các lệnh quay và dòch. + Cờ chẵn lẻ PF : Sau các lệnh số học hoặc logic đối với các lệnh byte nếu số lượng số ‘1’ trong byte kết quả là chẵn thì cờ PF được thiết lập là ‘1’ ngược lại là ‘0’ nếu là lẻ, đối với các lệnh word chỉ xét các byte thấp. + Cờ nhớ phụ AF: Cờ nhớ phụ được thiết lập nếu có nhớ (cộng) hoặc có thiếu (trừ) từ phân nửa dưới đến phân nửa trên của toán hạn (đối với lệnh byte đó là bit 3 và đối với lệnh word là bit 7) cờ AF được sử dụng trong các thao tác với số BCD. + Cờ zero ZF: Cờ zero được thiết lập khi kết quả bằng 0. + Cờ dấu SF: Cờ dấu là ‘1’ khi bit MSB của kết quả bằng ‘1’ tức là số âm, đối với lệnh byte MSB là bit 7 và trong lệnh word là bit 15. + Cờ bẫy TF: Tạo khả năng thực hiện chương trình theo từng bước, khi TF bằng ‘1’ 8086 phát sinh ngắt loại 1 (ngắt cứng). Chương trình DEBUG sử dụng khi thi hành lệnh T (trace) để chạy từng bước một lệnh. Đầu tiên DEBUG thiết lập cờ TF rồi mới chuyển điều khiển cho lệnh đó. Sau khi lệnh được thi hành vi xử lý sẽ phát sinh một ngắt do TF được lập DEBUG sử dụng chính phục vụ ngắt này để lấy quyền điều khiển từ vi xử lý. + Cờ ngắt IF: Cờ ngắt được sử dụng để điều khiển các ngắt phần cứng bên ngoài, nếu cờ này được thiết lập các ngắt phần cứng có thể ngắt 8086. Khi xóa IF, các ngắt bên ngoài không còn tác dụng nửa (bò che). Thực ra vẫn còn một ngắt cứng không che được NMI (Non Maskable Interrupt). Trước khi vi xử lý trao quyền điều khiển cho một phục ngắt nó xóa cả IF và TF, như vậy phục ngắt đó sẽ không bò ngắt. Tất nhiên một phục vụ ngắt có thể đổi cờ để cho phép ngắt khi nó đang thi hành. + Cờ tràn OF: Cờ tràn là ‘1’ khi có hiện tượng tràn và ngược lại nó bằng ‘0’. Hiện tượng tràn cho thấy một sự thật là phạm vi biểu diễn các số trong máy tính là có giới hạn. Phạm vi biểu diển các số có dấu trong một word từ –32768 đến +32767 và trong một byte từ –126 đến +127. Đối với các số không dấu từ 0 đến 65535 cho một word và từ 0 đến 255 cho một byte. Nếu kết quả của một phép tính vượt ra ngoài phạm vi này thì hiện tượng tràn sẽ xảy ra và kết quả nhận được bò cắt bớt sẽ không phải là kết quả đúng. + Cờ điều khiển DF: Là một trong ba cờ điều khiển dùng điều khiển các thao tác của vi xử lý công dụng của DF là dòch hướng cho các thao tác chuỗi, các thao tác này được thực hiện bởi hai thanh ghi chỉ số SI & DI, nội dung của hai thanh ghi này sẽ tự động tăng lên khi DF = 0 và giảm xuống khi DF =1. 3.2). Khối giao tiếp (BIU): Khối giao tiếp làm đơn giản việc liên lạc giữa EU và bộ nhớ hoặc các vi mạch vào ra. Nó có nhiệm vụ gởi các đòa chỉ, số liệu và tín hiệu điều khiển vào các bus, BUI & EU liên hệ với nhau bằng các bus nội bộ, khi EU đang thi hành một lệnh, BIU nạp 6 byte mã lệnh tiếp theo vào và đặt chúng vào hàng đợi lệnh, mục đích của việc này là làm tăng tốc độ của vi xử lý. Nếu EU cần liên lạc với bộ nhớ hay thiết bò ngoại vi, BIU sẽ treo các lệnh nhận trước và thực hiện thực hiện các thao tác cần thiết. BIU cấu tạo gồm các thanh ghi đoạn và con trỏ lệnh dùng để chứa đòa chỉ các ô nhớ. a). Các thanh ghi đoạn: Được dùng để lưu trử đòa chỉ của các lệnh và dữ liệu trong bộ nhớ, vi xử lý dựa trên các giá trò này để truy cập bộ nhớ. Bộ nhớ là tập hợp các byte ô nhớ, mỗi byte có một đòa chỉ xác đònh bắt đầu từ 0. 8086 gán cho mỗi ô nhớ một đòa chỉ vật lý 20 bit. Như vậy, nó có thể đònh đòa chỉ đến byte (tương đương 1MB) ô nhớ, các byte đầu tiên của bộ nhớ có đòa chỉ như sau: 0000 0000 0000 0000 0000 0000 0000 0000 0000 0001 0000 0000 0000 0000 0010 0000 0000 0000 0000 0011 0000 0000 0000 0000 0100 Để đơn giản, các đòa chỉ trên thường được biểu diển bằng số thập lục phân như sau: 00000H 00001H 00002H ………… H và cứ tiếp tục cho đến giá trò lớn nhất là FFFFFH Do các đòa chỉ quá lớn (20 bit) không thể chứa trong một thanh ghi của 8086 (16 bit) nên 8086 chia bộ nhớ thành các đoạn bộ nhớ (Memory Segment). Một đoạn bộ nhớ là một khối gồm 2 16 (64K) ô nhớ liên tiếp nhau, mỗi đoạn được xác đònh bằng một đòa chỉ đoạn bắt đầu từ đòa chỉ 0, đòa chỉ đoạn là một số 16 bit nên đòa chỉ đoạn lớn nhất là FFFF. Bên trong mỗi đoạn số ô nhớ được xác đònh bằng đòa chỉ tương đối (offset), đó là số byte tính từ đầu đoạn, với một đoạn 64K thì offset cũng là một số 16 bit, byte đầu tiên trong đoạn có offset bằng 0 và byte cuối cùng bằng FFFF. Một ô nhớ có thể được xác đònh bằng đòa chỉ đoạn:đòa chỉ tương đối trong đoạn (segment:offset) và được gọi là đòa chỉ logic. Thí dụ: ô nhớ A4FB: 4872 có đòa chỉ đoạn là A4FB và đòa chỉ offset là 4872. Để tìm đòa chỉ vật lý của ô nhớ trước tiên ta dòch đòa chỉ đoạn về bên trái 4 bit và sau đó cộng với đòa chỉ offset, như vậy đòa chỉ vật lý của ô nhớ A4FB:4872 được tính như sau: A4FB0 4872 A9822 b). Sắp xếp đoạn: Trong bộ nhớ đoạn 0 bắt đầu từ đòa chỉ 0000:0000 = 00000 và kết thúc ở 0000:FFFF = 0FFFF, đoạn 1 bắt đầu từ đòa chỉ 0001:0000 = 00010 và kết thúc ở đòa chỉ 0001:FFFF = 1000F. Như vậy, có rất nhiều sự chồng nhau giữa các đoạn. Các đoạn bắt đầu từ các đòa chỉ cách nhau 16byte và đòa chỉ đầu của mỗi đoạn luôn kết thúc bằng các số 0. 16byte được gọi là một khúc (Paragraph), các đòa chỉ chia hết cho 16 ( các đòa chỉ kết thúc bằng 0) là các biên giới khúc (Paragraph Boundary) c). Các đoạn của chương trình: Mỗi đoạn chương trình ngôn ngữ máy bao gồm các lệnh và dữ liệu, còn một vùng đặc biệt trong RAM gọi là ngăn xếp (stack). Mã lệnh, dữ liệu và ngăn xếp của chương trình được nạp vào các đoạn bộ nhớ khác nhau đó là đoạn mã (code segment), đoạn dữ liệu (data segment), đoạn ngăn xếp (stack segment). Để theo dõi các đoạn khác nhau của chương trình 8086 được cung cấp 4 thanh ghi đoạn để chứa các đòa chỉ đoạn, các thanh ghi CS, DS, SS lần lược chứa các đòa chỉ đoạn mã, đoạn dữ liệu, và đoạn ngăn xếp. Nếu chương trình muốn truy cập đến một dữ liệu thứ hai nó có thể sử dụng thanh ghi đoạn thêm ES (extra segment). Một chương trình không phải bao giờ cũng cần chiếm hết một đoạn 64KB, do đặc điểm chồng nhau giữa các đoạn cho phép các đoạn của một chương trình nhỏ hơn 64KB có thể đặt gần lại với nhau. Tại một thời điểm, chỉ có các ô nhớ được đònh đòa chỉ bởi 4 thanh ghi đoạn mới có thể truy cập, nghóa là chỉ có 4 đoạn bộ nhớ là tác động. Tuy nhiên nội dung của các thanh ghi đoạn có thể thay đổi bởi chương trình để truy cập đến các đoạn khác nhau. d). Hàng đợi lệnh: Như ta đã biết, để tăng tốc độ vi xử lý khối BIU tiếp nhận các lệnh và đưa vào hàng đợi lệnh (Queue) trong khi đó khối EU đang thi hành lệnh. Hàng đợi lệnh có thể nhận 6 byte mã lệnh, các lệnh của 8086 có độ dài từ 1 đến 6 byte, nếu lệnh chưa vào đầy đủ trong hàng đợi lệnh thì khối EU sẽ chờ cho đến khi lệnh nạp hết vào hàng đợi lệnh. II. CẤU TRÚC BÊN NGOÀI VÀ CHỨC NĂNG CỦA VXL 8086. 1). Sơ đồ chân của 8086: 8086 là vi xử lý 16 bit nó gồm 16 đường dữ liệu và 20 đường đòa chỉ, các đường dữ liệu từ D0 đến D15 và các đường đòa chỉ từ A0 đến A15 hoạt động theo phương pháp đa lộ thời gian. 8086 có thể làm việc ở hai chế độ: - Chế dộ Minimum. - Chế độ Maximum. Trong chế độ minimum, 8086 điều khiển các thiết bò bằng các tín hiệu điều khiển của chính nó, trong chế độ này hỗ trợ bộ xử lý toán học 8087 Trong chế độ maximum cần thiết phải kết hợp với vi mạch điều khiển bus 8288 để tạo ra các tín hiệu đọc – ghi cho bộ nhớ và các thiết bò ngoại vi và chế độ này cho phép làm việc với 8087. Sau đây là sơ đồ chân của 8086 ở cả hai chế độ minimum và maximum: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 GND AD 14 AD 13 AD 12 AD 11 AD 10 AD 9 AD 8 AD 7 AD 6 AD 5 AD 4 AD 3 AD 2 AD 1 AD 0 NMI INTR CLK GND Vcc AD 15 A 16 /S 3 A 17 /S 4 A 18 /S 5 A 17 /S 6 BHE/S 7 MN/MX RD HOLD (RQ/GT 0 ) HLDA (RQ/GT 1 ) WR (LOCK) M/IO (S 2 ) DT/R (S 1 ) DEN (S 0 ) ALE (QS 0 ) INTA (QS 1 ) TEST READY RESET 8086 CPU Hình 1.2: Sơ đồ chân 8086 2). Chức năng của các chân của 8086:  Vcc = 5V Điện áp nuôi là 5V DC, dung sai cho phép là 10%.  GND = 0V Các đường mass nên có điện trở càng nhỏ càng tốt.  CLK = clock (input) Xung đồng hồ đưa vào chân này là không đối xứng và có tỷ lệ là ½ (High/Low).  INTR- Interrupt Request (input): Mức cao ở ngõ này báo cho 8086 biết có một yêu cầu ngắt (thøng được gởi tới từ vi mạch xử lý ngắt 8259), tín hiệu ngắt tại chân này có thể bò che bằng phần mềm. Khi vi xử lý chấp nhận yêu cầu ngắt, nó sẽ đưa ra một chu kỳ chấp nhận ngắt và vi mạch xử lý ngắt phải gởi đòa chỉ của ngắt lên bus dữ liệu tương ứng với chu kỳ thứ hai.  NMI (Non Maskable Interrupt): Đây là ngắt không che được, tác động ở mức cao vi xử lý nhảy đến đòa chỉ ngắt số 2 trong bảng vector ngắt và không tạo ra chu kỳ chấp nhận ngắt.  Reset (input): Ngõ vào mức cao đặt vi xử lý về trạng thái ban đầu sau ít nhất 4 chu kỳ đồng hồ. Thanh ghi CS được đặt giá trò FFFF và thanh ghi IP được đặt giá trò 0000. Như vậy chỉ thò được thực hiện đầu tiên chứa ở ô nhớ FFFF0 quá trình chuyển tiếp từ mức cao xuống mức thấp được đồng bộ bởi chu kỳ đồng bộ từ vi mạch tạo xung đồng hồ 8284.  Ready (input): Tín hiệu báo đã hoàn tất thao tác truyền dữ liệu của bộ nhớ hoặc thiết bò vào – ra, tác động ở mức cao, vi xử lý sẽ đợi nếu tín hiệu này ở mức thấp.  AD 0 … AD 15 - Address/Data bus (input/output): Giống như trong 8085, các đường đòa chỉ - dữ liệu này làm việc theo nguyên tắc đa lộ thời gian, là đòa chỉ trong chu kỳ T 1 và là dữ liệu trong chu kỳ T 2 , T 3 , T w , T 4 , tác động ở mức cao, có cấu tạo ba trạng thái và ở trạng thái tổng trở cao trong lúc vi xử lý ‘Interrupt acknowlegde’ và ‘Hold acknowledge’.  A 16 /S 3 …… A 19 /S 6 – Addres/Status (output): Trong chu kỳ T 1 là 4 bit đòa chỉ cao khi thao tác với bộ nhớ, trong lúc thao tác với thiết bò vào - ra chân này có gía trò thấp. Trong cả hai thao tác cũng như vào – ra các bit này là trạng thái trong các chu kỳ T 2 , T 3 , T w , T 4 . Trạng thái bit cao cho phép ngắt, S 5 được cập nhật tại mỗi thời điễm bắt đầu của mỗi chu kỳ đồng hồ. S 3 & S 4 cho biết thanh ghi đoạn đang được sử dụng, thông tin này cần thiết cho Co-processor xác đònh vò trí của toán hạng. Có cấu tạo ba trạng thái và trạng thái tổng trở cao khi vi xử lý ‘Hold acknowledge’. S3 S4 Thanh ghi đoạn được chọn 0 0 1 1 0 1 0 1 Thanh ghi đoạn thêm. Thanh ghi đoạn ngăn xếp. Thanh ghi đoạn lệnh. Thanh ghi đoạn dữ liệu . Hai bit S 3 & S 4 để chọn các thanh ghi đoạn.  BHE/S 7 – Bus high enable / status (output): Kết hợp với bit đòa chỉ A 0 để xác đònh chế độ truyền dữ liệu, BHE ở mức thấp trong chu kỳ T 1 của các thao tác đọc – ghi và chấp nhận ngắt khi một byte được truyền trong byte cao của bus dữ liệu. S 7 có hiệu lực trong các chu kỳ T 2 , T 3 & T 4 , cấu tạo ba trạng thái và trạng thái tổng trở cao khi vi xử lý ở chế độ ‘Hold’. HBE A0 Kiểu truyền dữ liệu 0 0 1 1 0 1 0 1 Truy xuất 16 bit Truy xuất byte cao từ đòa chỉ lẻ Truy xuất byte thấp đòa chỉ chẳn. Không sử dụng . Các kiểu truy xuất dữ liệu.  RD – Read (output): Tín hiệu ra điều khiển việc đọc bộ nhớ hoặc khối vào ra phụ thuộc vào bit trạng thái S 2 , mức thấp tại T 2 , T 3 và T w trong mỗi chu kỳ đọc, cấu tạo ba trạng thái và tổng trở cao khi vi xử lý ở chế độ ‘Hold acknowledge’.  Test (input): Tín hiệu vào được kiễm tra bởi lệnh ‘wait’ vi xử lý sẽ không làm gì cả khi điện áp chân này có giá trò thấp, đồng bộ tại cạnh lên của mỗi xung đồng hồ.  MN-MX – Minimum-Maximum (input): Chân chọn chế độ làm việc của 8086, chế độ làm việc là minimum tương ứng với mức cao và chế độ làm việc là maximum ứng với mức thấp. Bus điều khiển ở hai chế độ có chức năng khác nhau.  M/IO (output): Ngỏ ra trạng thái giống như bit S 0 ở chế độ maximum dùng để báo vò trí đang truy xuất dữ liệu. Mức cao là bộ nhớ và mức thấp là khối vào-ra. Cấu tạo ba trạng thái, tổng trở cao khi vi xử lý ở chế độ ‘Hold acknowledge’.  WR – write (output): Tín hiệu ra điều khiển thao tác ghi vào bộ nhớ hoặc khối vào-ra tùy theo giá trò của ngõ M/IO. Tác động mức thấp ở T 2 , T 3 và T w của mỗi chu kỳ ghi, cấu tạo ba trạng thái và trạng thái tổng trở cao khi vi xử lý ở chế độ ‘Hold acknowledge’.  INTRA – Interrup Acknowlegde (output): Tín hiệu chấp thuận ngắt, tác động mức thấp tại T 2 , T 3 và T w dùng để đưa đòa chỉ của ngắt lên bus dữ liệu.  ALE – Adress Latch Enable Tín hiệu điều khiển chốt đòa chỉ 74LS373 hoặc 8282/8283 tác động mức cao trong khoảng T 1 của mỗi chu kỳ bus : + Khi ALE = 1 các bit AD 0 … AD 15 là đòa chỉ.  Hold (input): Tín hiệu vào cho biết một linh kiện đòi quyền sử dụng bus, tác động ở mức cao.  HLDA – Hold acknowlegde (output): Tín hiệu ra ở mức cao cho biết yêu cầu Hold được chấp thuận, vi xử lý sẽ treo bus nội bộ và các đường điều khiển của nó ở trạng thái tổng trở cao.  DT/R – Data Transmit/Receive (output): Tín hiệu ra dùng để điều khiển hướng truyền dữ liệu của vi mạch thu- phát. Cấu tạo ba trạng thái và trạng thái tổng trở cao khi vi xử lý ở chế độ ‘Hold acknowledge’.  DEN – Data enable (output): Tín hiệu ra ở mức thấp cho mỗi chu kỳ thao tác bộ nhớ và I/O và cả INTRA điều khiển ngỏ ra cho phép của 8286/8287 trong hoạt động thu – phát dữ liệu. Cấu tạo ba trạng thái, trạng thái tổng trở cao khi vi xử lý ở chế độ ‘Hold acknowledge’.  S 0 , S 1 , S 2 (thông tin trạng thái) : Vi mạch 8288 dựa trên các thông tin này để thực hiện các thao tác điều khiển. Cấu tạo ba trạng thái, trạng thái tổng trở cao khi ‘Hold acknowledge’. Tác động trong các chu kỳ T 4 , T 1 & T 2 và trở về trạng thái thụ động ở T 3 hoặc T w khi Ready ở mức cao. Một sự thay đổi bất kỳ của tín hiệu này trong chu kỳ T 4 được dùng để đánh dấu thời điểm bắt đầu của chu kỳ bus và trở về thụ động ở trong T 3 hoặc T w xác đònh điểm kết thúc của chu kỳ bus. S 2 S 1 S 0 Thông tin điều khiển 0 0 0 0 1 1 1 0 0 1 1 0 0 1 0 1 0 1 0 1 0 Chấp nhận ngắt. Đọc từ cổng. Viết ra cổng Dừng. Nhập mã lệnh. Đọc từ bộ nhớ. Viết ra bộ nhớ. 1 1 1 Thụ động.  RQ/GT 0 , RQ/GT 1 – Request/Gram (input/output): Hai tín hiệu yêu cầu vi xử lý nhường quyền sử dụng bus, tín hiệu RQ/GT 0 có mức ưu tiên cao hơn. Nguyên lý hoạt động được mô tả như sau: + Một xung có bề rộng một chu kỳ đồng hồ cho biết một linh kiện cần sử dụng bus. + Trong chu kỳ đồng hồ T 4 hoặc T 1 vi xử lý gởi đến linh kiện đó xung có bề rộng chu kỳ đồng hồ cho biết vi xử lý chấp nhận nhường quyền sử dụng bus và nó sẽ tiến vào trạng thái ‘Hold acknowledge’ sau xung đồng hồ kế tiếp để treo bus của chính nó. + Xung bề rộng chu kỳ đồng hồ được gởi đến 8086 cho biết quá trình ‘Hold’ kết thúc và vi xử lý trở lại quản lý bus xau khi chấm dứt chu kỳ đồng hồ kế tiếp. Nếu yêu cầu này xảy ra trong khi vi xử lý đang truy xuất bộ nhớ, nó sẽ treo bus trong khoảngT 4 nếu thỏa những diều kiện sau đây: - Yêu cầu xảy ra trong khi hoặc trước T 2 . - Chu kỳ hiện hành không phải là byte thấp của word (ở đòa chỉ lẻ). - Chu kỳ hiện hành không ở trạng thái chấp nhận ngắt. - Không có chỉ thò khóa. Nếu bus không bận khi có yêu cầu thì có hai trường hợp sẽ xảy ra. - Bus sẽ treo ở chu kỳ đồng hồ kế tiếp. - Một chu bộ nhớ sẽ khởi động trong vòng 3 chu kỳ đồng hồ.  Clock (output): Mức cao báo cho các linh kiện ngoài biết (Co-processor) rằng chu kỳ bus tiếp theo không được phép gián đoạn, điều này xảy ra khi trong chương trình có chỉ thò ‘Clock’. Cấu tạo ngõ ra ba trạng thái, trạng thái tổng trở cao khi vi xử lý ở chế độ ‘Hold acknowledge’  QS 1 , QS 0 – Queue status (output): Ngõ ra cho biết trạng thái của hàng đợi lệnh, những thông tin này cần thiết cho Co-processor. QS 0 QS 1 Trạng thái hàng đợi lệnh 0 0 1 1 0 1 0 1 Không hoạt động . Xóa nội dung hàng đợi kệnh. Nạp byte mã lệnh đầu tiên vào thanh ghi lệnh. Nạp byte mã lệnh tiếp theo của lệnh nhiều byte III. CÁC PHƯƠNG PHÁP ĐỊNH ĐỊA CHỈ CỦA VI XỬ LÝ 8086: Phương pháp đònh đòa chỉ (Addressing Mode) là cách để CPU tìm thấy toán hạng cho các lệnh của nó khi hoạt động. Một bộ vi xử lý có thể có nhiều chế độ đònh đòa chỉ. Các chế độ đònh đòa chỉ này được xác đònh ngay từ khi chế tạo ra bộ vi xử lý và sau này người ta lấy đó để làm chuẩn mà không thay đổi. Ngoài các phương pháp đònh đòa chỉ: tức thời, trực tiếp, gián tiếp giống như của 8085, vi xử lý 8086 còn có thêm các cách đònh đòa chỉ khác và được phân loại như sau: - Đònh đòa chỉ bằng thanh ghi. - Đònh đòa chỉ tức thời. - Đònh đòa chỉ trực tiếp. - Đònh đòa chỉ gián tiếp. - Đònh đòa chỉ tương đối. Bằng cách kết hợp các phương pháp đònh đòa chỉ khác nhau trong một chỉ thò, có thể tạo ra nhiều khả năng phức tạp để truy xuất toán hạng (operand) các thiết bò vào – ra chỉ được truy cập bằng các phương pháp trực tiếp và gián tiếp. Thứ tự mô tả byte của một word được lưu trong bộ nhớ giống như qui đònh của 8085, có nghóa là các byte thấp (LSB) ở đòa chỉ thấp và các byte cao (MSB) được đặt ở đòa chỉ cao hơn kế cận. Trong các trình bày sau đây, bộ đếm chương trình PC (Program Counter) chứa đòa chỉ offset của chỉ thò kế tiếp sẽ thực hiện, chỉ thò này đả sẳn sàng trong hàng đợi lệnh. Con trỏ lệnh IP trỏ đến đòa chỉ cao hơn, đó là byte tiếp theo sẽ được BIU nhập vào hàng đợi lệnh. 1). Các phương pháp đònh đòa chỉ thông dụng: 1.1) Đònh đòa chỉ tức thời: Trong phương pháp này toán hạng nguồn chính là dữ liệu cần xử lý của chỉ thò. Thí dụ: Mov ax, 1200 1.2). Phương pháp đònh đòa chỉ trực tiếp: Trong chỉ thò bao gồm đòa chỉ offset của toán hạng, đòa chỉ đoạn được quy đònh là nội dung của thanh ghi DS. Thí dụ: Mov ax [0230] SP BP SI DI 0100 PC O D I T S Z A P C FI EC CS DS SS ES 2300 EC O D I T S Z A P C FI AX BX CX DX SP BP SI DI CS DS SS ES 2300 0101 PC Sau Trước CPU Bộ nhớ 1200 2300 2300 0100 0101 Hình1.4: Ph ương pháp đònh đòa chỉ gián tiếp 0260 1C 260 I/O 1C 260 I/O AX BX CX DX SP BP SI DI 0100 PC O D I T S Z A P C FI B8 00 12 CS DS SS ES 2300 B8 00 12 O D I T S Z A P C FI AX BX CX DX SP BP SI DI CS DS SS ES 2300 0103 PC Sau Trước CPU Bộ nhớ 1200 2300 2300 0100 0103 Hình1.3 : Phương pháp đònh đòa chỉ tức thời Mov Ax, 1200 . 8086 cho biết quá trình ‘Hold’ kết thúc và vi xử lý trở lại quản lý bus xau khi chấm dứt chu kỳ đồng hồ kế tiếp. Nếu yêu cầu này xảy ra trong khi vi xử lý đang truy xuất bộ nhớ, nó sẽ treo bus. cao ở ngõ này báo cho 8086 biết có một yêu cầu ngắt (thøng được gởi tới từ vi mạch xử lý ngắt 8259), tín hiệu ngắt tại chân này có thể bò che bằng phần mềm. Khi vi xử lý chấp nhận yêu cầu ngắt,. ngắt và vi mạch xử lý ngắt phải gởi đòa chỉ của ngắt lên bus dữ liệu tương ứng với chu kỳ thứ hai.  NMI (Non Maskable Interrupt): Đây là ngắt không che được, tác động ở mức cao vi xử lý nhảy

Ngày đăng: 14/07/2014, 00:20

Từ khóa liên quan

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

Tài liệu liên quan