Diễn đàn lớp 32CĐ Cơ-Điện Tử ĐHCN Việt - Hung
Chào Mừng bạn đến với diễn đàn của lớp 32CĐ Cơ - Điện Tử ĐHCN Việt-Hung

Diễn đàn lớp 32CĐ Cơ-Điện Tử ĐHCN Việt - Hung

Sân chơi dành cho sinh viên giao lưu học tập
 
Trang ChínhPortalCalendarGalleryTrợ giúpTìm kiếmThành viênNhómĐăng kýĐăng Nhập

Share | 
 

 2.4.NHÓM LỆNH LOGIC

Xem chủ đề cũ hơn Xem chủ đề mới hơn Go down 
Tác giảThông điệp
Admin
vip
vip
avatar

Tổng số bài gửi : 366
vi phạm : 0
Join date : 15/04/2010
Age : 27
Đến từ : Bình Lục-Hà Nam

Bài gửiTiêu đề: 2.4.NHÓM LỆNH LOGIC   Sat Dec 25, 2010 4:00 pm

1. Lệnh And dữ liệu ở thanh ghi A với dữ liệu ở thanh ghi Rn:

  • Cú pháp: ANL A,Rn
  • Lệnh này chiếm dung lượng bộ nhớ ROM là: 1 Byte
  • Thời gian thực hiện: 1 chu kì máy
  • Công dụng: thực hiện phép logic AND dữ liệu ở thanh ghi A với dữ liệu ở thanh ghi Rn, kết quả được lưu trữ ở thanh ghi A
  • Ví dụ:
    mov A,#0Fh
    mov R1,#0F0h
    ANL A,R1

    Kết quả : A = #0H

2. Lệnh And dữ liệu trên thanh ghi A với dữ liệu của ô nhớ có địa chỉ direct:

  • Cú pháp: ANL A,direct
  • Lệnh này chiếm dung lượng bộ nhớ ROM là 2 Byte
  • Thời gian thực hiện: 1 chu kì máy
  • Công dụng: thực hiện phép logic AND dữ liệu ở thanh ghi A với dữ liệu ở ô nhớ có địa chỉ direct, kết quả được lưu trữ ở thanh ghi A
  • Ví dụ:
    mov A,#0FFh
    mov 10h,#010h
    ANL A,10h

    Kết quả : A = #010h

3. Lệnh And dữ liệu trên thanh ghi A với dữ liệu của ô nhớ gián tiếp:

  • Cú pháp: ANL A,@Ri
  • Lệnh này chiếm dung lượng bộ nhớ ROM là 1 Byte
  • Thời gian thực hiện: 1 chu kì máy
  • Công dụng: thực hiện phép logic AND dữ liệu ở thanh ghi A với dữ liệu của ô nhớ có địa chỉ bằng giá trị của thanh ghi Ri, kết quả được lưu trữ ở thanh ghi A
  • Ví dụ:
    mov A,#0Fh
    mov 70h,#0E1h
    mov R1,#070h
    ANL A,@R1

    Kết quả : A = #01h

4. Lệnh And dữ liệu trên thanh ghi A với dữ liệu xác định:

  • Cú pháp: ANL A,#data
  • Lệnh này chiếm dung lượng bộ nhớ ROM là 2 Byte
  • Thời gian thực hiện: 1 chu kì máy
  • Công dụng: thực hiện phép logic AND dữ liệu ở thanh ghi A với dữ liệu cho trước, kết quả được lưu trữ ở thanh ghi A
  • Ví dụ:
    mov A,#0Eh
    ANL A,#11h

    Kết quả : A = #00

5. Lệnh And dữ liệu của ô nhớ có địa chỉ direct với dữ liệu trên thanh ghi A:

  • Cú pháp: ANL direct,A
  • Lệnh này chiếm dung lượng bộ nhớ ROM là 2 Byte
  • Thời gian thực hiện: 1 chu kì máy
  • Công dụng: thực hiện phép logic AND dữ liệu ở thanh ghi A với dữ liệu của ô nhớ có địa chỉ direct, kết quả được lưu trữ ở ô nhớ có địa chỉ direct.
  • Ví dụ:
    mov A,#08h
    mov R1,#0F7h
    ANL R1,A

    Kết quả : R1 = #0

6. Lệnh And dữ liệu trên ô nhớ có địa chỉ direct với dữ liệu xác định:

  • Cú pháp: ANL direct,#data
  • Lệnh này chiếm dung lượng bộ nhớ ROM là 2 Byte
  • Thời gian thực hiện: 1 chu kì máy
  • Công dụng: thực hiện phép logic AND dữ liệu của ô nhớ có địa chỉ direct với dữ liệu cho trước, kết quả được lưu trữ ở ô nhớ có địa chỉ direct.
  • Ví dụ:
    mov R1,#0F7h
    ANL R1,#1Fh

    Kết quả : R1 = #017h

7. Lệnh OR dữ liệu ở thanh ghi A với dữ liệu ở thanh ghi Rn:

  • Cú pháp: ORL A,Rn
  • Lệnh này chiếm dung lượng bộ nhớ ROM là: 1 Byte
  • Thời gian thực hiện: 1 chu kì máy
  • Công dụng: thực hiện phép logic OR dữ liệu ở thanh ghi A với dữ liệu ở thanh ghi Rn, kết quả được lưu trữ ở thanh ghi A
  • Ví dụ: mov A,#0Fh
    mov R1,#0F0h
    ORL A,R1

    Kết quả : A = #0FFh

8. Lệnh OR dữ liệu trên thanh ghi A với dữ liệu của ô nhớ có địa chỉ direct:

  • Cú pháp: ORL A,direct
  • Lệnh này chiếm dung lượng bộ nhớ ROM là 2 Byte
  • Thời gian thực hiện: 1 chu kì máy
  • Công dụng: thực hiện phép logic OR dữ liệu ở thanh ghi A với dữ liệu của ô nhớ có địa chỉ direct, kết quả được lưu trữ ở thanh ghi A
  • Ví dụ: mov A,#0Eh
    mov 50h,#0F0h
    ORL A,50h

    Kết quả : A = #0FEh

9. Lệnh OR dữ liệu trên thanh ghi A với dữ liệu của ô nhớ gián tiếp:

  • Cú pháp: ORL A,@Ri
  • Lệnh này chiếm dung lượng bộ nhớ ROM là 1 Byte
  • Thời gian thực hiện: 1 chu kì máy
  • Công dụng: thực hiện phép logic OR dữ liệu ở thanh ghi A với dữ liệu của ô nhớ có địa chỉ bằng giá trị của thanh ghi Ri, kết quả được lưu trữ ở thanh ghi A
  • Ví dụ:
    mov A,#18h
    mov 30h,#0F0h
    mov R1,#30h
    ORL A,@R1

    Kết quả : A = #0F8h

10. Lệnh OR dữ liệu trên thanh ghi A với dữ liệu xác định:

  • Cú pháp: ORL A,#data
  • Lệnh này chiếm dung lượng bộ nhớ ROM là 2 Byte
  • Thời gian thực hiện: 1 chu kì máy
  • Công dụng: thực hiện phép logic OR dữ liệu ở thanh ghi A với dữ liệu cho trước, kết quả được lưu trữ ở thanh ghi A
  • Ví dụ:
    mov A,#00h
    ORL A,#10h

    Kết quả : A = #010h

11. Lệnh OR dữ liệu của ô nhớ có địa chỉ direct với dữ liệu trên thanh ghi A:

  • Cú pháp: ORL direct,A
  • Lệnh này chiếm dung lượng bộ nhớ ROM là 2 Byte
  • Thời gian thực hiện: 1 chu kì máy
  • Công dụng: thực hiện phép logic OR dữ liệu ở thanh ghi A với dữ liệu của ô nhớ có địa chỉ direct, kết quả được lưu trữ ở ô nhớ có địa chỉ direct.
  • Ví dụ:
    mov A,#0Fh
    mov 5Fh,#0F0h
    ORL 5Fh,A

    Kết quả : 5Fh = #0FFh

12. Lệnh OR dữ liệu trên ô nhớ có địa chỉ direct với dữ liệu xác định:

  • Cú pháp: ORL direct,#data
  • Lệnh này chiếm dung lượng bộ nhớ ROM là 3 Byte
  • Thời gian thực hiện: 2 chu kì máy
  • Công dụng: thực hiện phép logic OR dữ liệu của ô nhớ có địa chỉ direct với dữ liệu cho trước, kết quả được lưu trữ ở ô nhớ có địa chỉ direct.
  • Ví dụ:
    mov 60h,#0F0h
    ORL 60h,#1Fh

    Kết quả : 60h = #0FFh

13. Lệnh EX-OR dữ liệu ở thanh ghi A với dữ liệu ở thanh ghi Rn:

  • Cú pháp: XRL A,Rn
  • Lệnh này chiếm dung lượng bộ nhớ ROM là: 1 Byte
  • Thời gian thực hiện: 1 chu kì máy
  • Công dụng: thực hiện phép logic EX-OR dữ liệu ở thanh ghi A với dữ liệu ở thanh ghi Rn, kết quả được lưu trữ ở thanh ghi A
  • Ví dụ:
    mov A,#0F2h
    mov R3,#0E0h
    XRL A,R3

    Kết quả : A = #12h

14. Lệnh EX-OR dữ liệu trên thanh ghi A với dữ liệu của ô nhớ có địa chỉ direct:

  • Cú pháp: XRL A,direct
  • Lệnh này chiếm dung lượng bộ nhớ ROM là 2 Byte
  • Thời gian thực hiện: 1 chu kì máy
  • Công dụng: thực hiện phép logic EX-OR dữ liệu ở thanh ghi A với dữ liệu của ô nhớ có địa chỉ direct, kết quả được lưu trữ ở thanh ghi A
  • Ví dụ:
    mov A,#012h
    mov 10h,#0E0h
    XRL A,10h

    Kết quả : A = #0F2h

15. Lệnh EX-OR dữ liệu trên thanh ghi A với dữ liệu của ô nhớ gián tiếp:

  • Cú pháp: XRL A,@Ri
  • Lệnh này chiếm dung lượng bộ nhớ ROM là 1 Byte
  • Thời gian thực hiện: 1 chu kì máy
  • Công dụng: thực hiện phép logic EX-OR dữ liệu ở thanh ghi A với dữ liệu của ô nhớ có địa chỉ bằng giá trị của thanh ghi Ri, kết quả được lưu trữ ở thanh ghi A
  • Ví dụ:
    mov A,#08h
    mov 10h,#0E9h
    mov R0,#10h
    XRL A,@R0

    Kết quả : A = #0E1h

16. Lệnh EX-OR dữ liệu trên thanh ghi A với dữ liệu xác định:

  • Cú pháp: XRL A,#data
  • Lệnh này chiếm dung lượng bộ nhớ ROM là 2 Byte
  • Thời gian thực hiện: 1 chu kì máy
  • Công dụng: thực hiện phép logic EX-OR dữ liệu ở thanh ghi A với dữ liệu cho trước, kết quả được lưu trữ ở thanh ghi A
  • Ví dụ:
    mov A,#12h
    XRL A,#12h

    Kết quả : A = #0

17. Lệnh EX-OR dữ liệu của ô nhớ có địa chỉ direct với dữ liệu trên thanh ghi A:

  • Cú pháp: XRL direct,A
  • Lệnh này chiếm dung lượng bộ nhớ ROM là 2 Byte
  • Thời gian thực hiện: 1 chu kì máy
  • Công dụng: thực hiện phép logic EX-OR dữ liệu ở thanh ghi A với dữ liệu của ô nhớ có địa chỉ direct, kết quả được lưu trữ ở ô nhớ có địa chỉ direct.
  • Ví dụ:
    mov A,#0F2h
    mov 50h,#0E0h
    XRL 50h,A

    Kết quả : 50h = #12h

18. Lệnh EX-OR dữ liệu trên ô nhớ có địa chỉ direct với dữ liệu xác định:

  • Cú pháp: XRL direct,#data
  • Lệnh này chiếm dung lượng bộ nhớ ROM là 3 Byte
  • Thời gian thực hiện: 2 chu kì máy
  • Công dụng: thực hiện phép logic EX-OR dữ liệu của ô nhớ có địa chỉ direct với dữ liệu cho trước, kết quả được lưu trữ ở ô nhớ có địa chỉ direct.
  • Ví dụ:
    mov 50h,#0E0h
    XRL 50h,#01h

    Kết quả : 50h = #0E1h

19. Lệnh bù giá trị dữ liệu trên thanh ghi A:

  • Cú pháp: CPLA
  • Lệnh này chiếm dung lượng bộ nhớ ROM là 1 Byte
  • Thời gian thực hiện: 1 chu kì máy
  • Công dụng: lấy bù giá trị lưu giữ ở thanh ghi A, các bit có giá trị là 1 chuyển thành 0 và ngược lại các bit có giá trị là 0 chuyển thành 1.
  • Ví dụ: mov A,#01100111b ;(tương đương 67h)
    CPL A

    Kết quả : A = #10011000b (tương đương 98h)

20. Lệnh xóa dữ liệu trên thanh ghi A:

  • Cú pháp: CLRA
  • Lệnh này chiếm dung lượng bộ nhớ ROM là 1 Byte
  • Thời gian thực hiện: 1 chu kì máy
  • Công dụng: tất cả các bit của thanh ghi A đều được xác lập giá trị 0 .
  • Ví dụ:
    mov A,#01100111b
    CLR A

    Kết quả : A = #0

21. Lệnh xoay trái dữ liệu trên thanh ghi A:

  • Cú pháp: RLA
  • Lệnh này chiếm dung lượng bộ nhớ ROM là 1 Byte
  • Thời gian thực hiện: 1 chu kì máy
  • Công dụng: thanh ghi A gồm tám bit A7 A6 A5 A4 A3 A2 A1 A0. Khi thực hiện lệnh xoay trái RL A giá trị của các bit được chuyển trang bit ở bên trái nó, giá trị của bit A0 chuyển sang bit A1, giá trị của bit A1 chuyển sang bit A2, tương tự với các bit còn lại, và giá trị của bit A7 chuyển sang bit A0. Minh họa các bit trong thanh ghi A khi thực hiện lệnh như trong hình dưới











    Các bit ở thanh ghi A
    Quá trình xoay dữ liệu từ A0 đến A6
    Giá trị dữ liệu A7 chuyển sang bit A0





















    A7A6A5A4A3A2A1A0
    <—<—<—<—<—<—<—
    A7 ——————————————————>A0
  • Ví dụ:
    Mov A,#01001001b
    RL A
    Kết quả sau khi các lệnh được thực hiện A mang giá trị là 10010010b

Giá trị thanh ghi A
Trước khi thực hiện lệnh xoay trái0 1 0 0 1 0 0 1
Sau khi thực hiện lệnh xoay trái1 0 0 1 0 0 1 0
22. Lệnh xoay trái dữ liệu trên thanh ghi A cùng với cờ nhớ C:

  • Cú pháp: RLCA
  • Lệnh này chiếm dung lượng bộ nhớ ROM là 1 Byte
  • Thời gian thực hiện: 1 chu kì máy
  • Công dụng: thanh ghi A gồm tám bit A7 A6 A5 A4 A3 A2 A1 A0. Khi thực hiện lệnh xoay trái A với cờ nhớ RLC A giá trị của các bit được chuyển trang bit ở bên trái nó, giá trị của bit A0 chuyển sang bit A1, giá trị của bit A1 chuyển sang bit A2, tương tự với các bit còn lại, và giá trị của bit A7 chuyển sang cờ nhớ C, giá trị ở cờ nhớ C chuyển sang bit A0











Các bit ở thanh ghi A cùng với cờ C
Quá trình xoay dữ liệu từ A0 đến A6
Giá trị ở C chuyển sang bit A0























C A7A6A5A4A3A2A1A0
<—<—<—<—<—<—<—<—
C ———————————————————>A0


  • Ví dụ: giả sử cờ nhớ C đang mang giá trị 1
    Mov A,#11001001b
    RLC A
    Kết quả sau khi các lệnh được thực hiện A mang giá trị là 10010011b và C mang giá trị 1

Cờ nhớ C
Giá trị thanh A
Trước khi thực hiện lệnh xoay trái với C11 1 0 0 1 0 0 1
Sau khi thực hiện lệnh xoay trái với C11 0 0 1 0 0 1 1
23. Lệnh xoay phải dữ liệu trên thanh ghi A:

  • Cú pháp: RRA
  • Lệnh này chiếm dung lượng bộ nhớ ROM là 1 Byte
  • Thời gian thực hiện: 1 chu kì máy
  • Công dụng: thanh ghi A gồm tám bit A7 A6 A5 A4 A3 A2 A1 A0. Khi thực hiện lệnh xoay phải RR A giá trị của các bit được chuyển trang bit ở bên phải nó, giá trị của bit A7 chuyển sang bit A6, giá trị của bit A6 chuyển sang bit A5, tương tự với các bit còn lại, và giá trị của bit A0 chuyển sang bit A7. Minh họa các bit trong thanh ghi A khi thực hiện lệnh như trong hình dưới











    Các bit ở thanh ghi A
    Quá trình xoay dữ liệu từ A7 đến A1
    Giá trị dữ liệu A0 chuyển sang bit A7





















    A7A6A5A4A3A2A1A0
    —>—>—>—>—>—>—>
    A7 <——————————————————A0
  • Ví dụ:
    Mov A,#01001001b
    RL A
    Kết quả sau khi các lệnh được thực hiện A mang giá trị là 10100100b

Giá trị thanh A
Trước khi thực hiện lệnh xoay phải0 1 0 0 1 0 0 1
Sau khi thực hiện lệnh xoay phải1 0 1 0 0 1 0 0
24. Lệnh xoay phải dữ liệu trên thanh ghi A cùng với cờ nhớ C:

  • Cú pháp: RRCA
  • Lệnh này chiếm dung lượng bộ nhớ ROM là 1 Byte
  • Thời gian thực hiện: 1 chu kì máy
  • Công dụng: thanh ghi A gồm tám bit A7 A6 A5 A4 A3 A2 A1 A0. Khi thực hiện lệnh xoay phải A với cờ nhớ -RRC A -giá trị của các bit được chuyển trang bit ở bên phải nó, giá trị của bit A7 chuyển sang bit A6, giá trị của bit A6 chuyển sang bit A5, tương tự với các bit còn lại, và giá trị của bit A0 chuyển sang cờ nhớ C, giá trị ở cờ nhớ C chuyển sang bit A7











Các bit ở thanh ghi A cùng với cờ C
Quá trình xoay dữ liệu từ C đến A1
Giá trị ở A0 chuyển sang bit C























C A7A6A5A4A3A2A1A0
—>—>—>—>—>—>—>—>
C <———————————————————A0

  • Ví dụ: giả sử cờ nhớ C đang mang giá trị 1
    Mov A,#11001001b
    RLC A
    Kết quả sau khi các lệnh được thực hiện A mang giá trị là 11100100b và C mang giá trị 1

Cờ nhớ C
Giá trị thanh A
Trước khi thực hiện lệnh xoay trái với C11 1 0 0 1 0 0 1
Sau khi thực hiện lệnh xoay trái với C11 1 1 0 0 1 0 0
25. Lệnh xoay 4 bit trên thanh ghi A:

  • Cú pháp: SWAP A
  • Lệnh này chiếm dung lượng bộ nhớ ROM là 1 Byte
  • Thời gian thực hiện: 1 chu kì máy
  • Công dụng: hoán chuyển dữ liệu ở 4 bit thấp lên 4 bit cao và 4 bit cao xuống 4 bit thấp











Các bit ở thanh ghi A
Dữ liệu trước khi thực hiên lệnh
Dữ liệu sau khi thực hiên lệnh




























A7A6A5A4A3A2A1A0
X7X6X5X4X3X2X1X0
X3X2X1X0X7X6X5X4

  • Ví dụ:
    mov A,#0E7h
    SWAP A

    Kết quả : A = # 7Eh
Về Đầu Trang Go down
Xem lý lịch thành viên http://loveanhthao.co.cc
 

2.4.NHÓM LỆNH LOGIC

Xem chủ đề cũ hơn Xem chủ đề mới hơn Về Đầu Trang 
Trang 1 trong tổng số 1 trang

Permissions in this forum:Bạn không có quyền trả lời bài viết
Diễn đàn lớp 32CĐ Cơ-Điện Tử ĐHCN Việt - Hung :: Cơ - Điện Tử :: VI ĐIỀU KHIỂN ỨNG DỤNG-
Chuyển đến 
Đăng NhậpNhanh
.:Đăngkí:. | .: Quên mật khẩu:.