intTypePromotion=1

Báo cáo tập lệnh

Chia sẻ: Hoàng Năng Hưng | Ngày: | Loại File: DOCX | Số trang:9

0
92
lượt xem
13
download

Báo cáo tập lệnh

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Nhằm giúp các bạn chuyên ngành Công nghệ thông tin có thêm tài liệu tham khảo trong quá trình học tập và nghiên cứu, mời các bạn cùng tham khảo tài liệu "Báo cáo tập lệnh" dưới đây. Đây là tài liệu tìm hiểu về các tập lệnh cơ bản của CPU, hy vọng là tài liệu phục vụ hữu ích cho các bạn.

Chủ đề:
Lưu

Nội dung Text: Báo cáo tập lệnh

  1. BÁO CÁO TẬP LỆNH Lưu ý: Trước tiên ta cần tìm hiểu về lại về khí niệm “Thanh ghi trạng thái ­ SREG  (STATUS REGISTRY).” Thanh ghi SREG chứa 8 bit cờ (flag) chỉ trạng thái của bộ xử lí, tất cả các bit  này đều bị xóa sau khi reset, các bit này cũng có thể được đọc và ghi bởi chương  trình. Chức năng của từng bit được mô tả như sau: Bit 0 – C (Carry Flag: Cờ nhớ) : là bit nhớ trong các phép đại số hoặc logic,  ví dụ thanh ghi R1 chứa giá trị 200, R2 chứa 70, chúng ta thực hiện phép cộng   có nhớ: ADC R1, R2, sau phép cộng, kết quả sẽ được lưu lại trong thanh ghi   R1, trong khi kết quả  thực là 270 mà thanh ghi R1 lại chỉ có khả  năng chứa   tối đa giá trị 255 (vì có 8 bit) nên trong trường hợp này, giá trị lưu lại trong R1  thực chất chỉ là 14, đồng thời cờ C được set lên 1 (vì 270=100001110, trong đó  8 bit sau 00001110 =14 sẽ được lưu lại trong R1). Bit 1 – Z (Zero Flag: Cờ 0): cờ này được set nếu kết quả phép toán đại số  hay phép Logic bằng 0. Bit 2 – N (Negative Flag: Cờ âm): cờ  này được set nếu kết quả  phép toán  đại số hay phép Logic là số âm. Bit 3 – V (Two’s complement Overflow Flag: Cờ tràn của bù 2): hoạt động  của cờ này có vẻ  sẽ  khó hiểu cho bạn vì nó liên quan đến kiến thức số nhị  phân (phần bù), chúng ta sẽ đề cập đến khi nào thấy cần thiết. Bit 4  – S (Sign Bit: Bit dấu) : Bit S là kết quả phép XOR giữa 1 cờ N và V,   S=N xor V. Bit 5 – H (Half Carry Flag: Cờ nhờ nữa): cờ H là cờ nhớ trong 1 vài phép  toán đại số  và phép Logic, cờ  này hiệu quả  đối với các phép toán với số  BCD. Bit 6 – T (Bit Copy Storage): được sử  dụng trong 2 Instruction BLD (Bit  LoaD) và BST (Bit STorage). Tôi sẽ  giải thích chức năng Bit T trong phần  giới thiệu về BLD và BST. Bit 7 – I (Global Interrupt Enable) : Cho phép ngắt toàn bộ: Bit này phải  được set lên 1 nếu trong chương trình có sử  dụng ngắt. Sau khi set bit này,   bạn muốn kích hoạt loại ngắt nào cần set các bit ngắt riêng của ngắt đó. Hai  instruction dùng riêng để Set và Clear bit I là SEI và CLI. I. Ký hiệu dùng trong báo cáo: Rd : Điểm đến (và nguồn) đăng ký trong File Đăng ký
  2. Rr : Nguồn đăng ký trong Sổ đăng ký tập tin R : Kết quả sau khi dạy được thực thi K : dữ liệu liên tục k : Hằng số địa chỉ b : Bit trong File Đăng ký hoặc I / O Register ( 3 ­ bit) s : Bit trong Status Register ( 3 ­ bit) X , Y , Z : Gián tiếp Địa chỉ Đăng ký ( X = R27 : R26 , Y = R29 : R28 và Z = R31 : R30 ) A: I / O địa chỉ địa điểm q : Displacement cho địa chỉ trực tiếp ( 6 ­ bit) II. Các lênh: 1. Các lệnh chuyển dữ liệu: + MOV: Copy dữ liệu nguồn đến đich MOV đich, nguồn. Trong đó toán hạng đích  và gốc có thể tìm theo các địa chỉ khác nhau, nhưng phải có cùng độ dài. Operation: Rd   Rr Syntax: MOV Rd,Rr Operands: 0   d   31, 0   r   31 ( cấu trúc có 5 chữ d 2^5 = 32) Program Counter: PC   PC + 1 + LOAD: Nạp dữ liệu từ bộ nhớ đến bộ xử lý. LD (Tải trực tiếp từ không gian dữ liệu để đăng ký sử dụng Index X ): LD (Tải trực tiếp từ không gian dữ liệu để đăng ký sử dụng Index Y) LDD (Tải trực tiếp từ không gian dữ liệu để đăng ký sử dụng Index Y) LDD (Tải trực tiếp từ không gian dữ liệu để đăng ký sử dụng chỉ số Z) LDI (Tải ngay) Operation: Rd   K Syntax: LDI Rd,K Operands: 16   d   31, 0   K   255 Program Counter: PC   PC + 1 LDS (Tải trực tiếp từ không gian dữ liệu)
  3. LDS ( 16 ­ bit) (Tải trực tiếp từ không gian dữ liệu) + STORE: Cất dữ liệu từ bộ xử lý đến bộ nhớ ST (Cửa hàng gián tiếp Từ Đăng ký để sử dụng dữ liệu không gian Index X) ST ( STD ) ­ Store gián Từ Đăng ký để sử dụng dữ liệu không gian Index Y ST ( STD ) ­ Store gián Từ Đăng ký để sử dụng dữ liệu không gian Index Z STS ­ Lưu trữ trực tiếp đến không gian dữ liệu. + EXCHANGE: Trao đổi nội dung của nguồn và đích. + CLEAR: Chuyển các bit 0 vào toán hạng đích. CLC – Clear Carry Flag CLH – Clear Half Carry Flag
  4. CLI – Clear Global Interrupt Flag CLR – Clear Register CLN – Clear Negative Flag CLS – Clear Signed Flag CLT – Clear T Flag
  5. CLV – Clear Overflow Flag CLZ – Clear Zero Flag + SET: Chuyển các bít 1 vào toán hạng đích Tương tự trên có các SE C ­> Z. + PUSH: Cất nội dụng toán hạng nguồn vào ngăn xếp. + POP: Lấy nội dung của đỉnh ngăn xếp đưa lên toán hạng đích. 2. Các lệnh số học: + ADD: Cộng hai toán hạng
  6. + SUBTRACT: Trừ hai toán hạng  + MULTIPLY: Nhân 2 toán hạng + DIVIDE: Chia 2 toán hạng + ABSOLUTE: Lấy trị tuyệt đối của toán hạng + NEGATE: Đổi dấu toán hạng lấy bù 2 + INCREMENT:Tăng toán hạng thêm 1 + DECREMENT: Giảm toán hạng đi 1
  7. + COMPARE: Trừ hai toán hạng để lập cờ. 3. Các lệnh Logic: + AND: Thực hiện phép AND 2 toán hạng + OR: Thực hiện phép OR 2 toán hạng + XOR: Thực hiện phép XOR 2 toán hạng + NOT: Đảo bit của toán hạng lấy bù 1 + TEST: Thực hiện phép AND 2 toán hạng để lập cờ + SHIFT: Dịch trái (phải) toán hạng LSL – Logical Shift Left
  8. LSR – Logical Shift Right + ROTATE: Quay trái (phải)  toán hạng ROL – Rotate Left trough Carry ROR – Rotate Right trough Carry 4. Các lệnh chuyển điều khiển: + JUMP: Nếu đúng thì nạp vào PC 1 địa chỉ xác định, nếu sai thì không làm gì cả + CALL và RETURN:
  9. 5. Các lệnh chuyển hệ thống + NOOPENTION: Không thực hiện gì cả + LOCK: Cấm không cho xin chuyển nhượng bus + HALT: Dừng thực hiện chương trình + WAIT: Tạm dừng thực hiện chương trình, lặp kiểm tra điều kiện cho đến khi  thỏa mãn thì mới bắt đầu thực hiện. + UNLOCK: Cho phép chyển nhượng bus
ADSENSE
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2