SETB 0E7H là dành cho SETB ACC.7 (bít D7 của thanhghi A) 8.1.3 Kiểm tra một bớt đầu và

Một phần của tài liệu GIÁO TRÌNH VI XỬ LÝ 8051 pdf (Trang 88 - 89)

DIV A B; A= 09 (th−ơng số) ;B =05 (số d−) Lu ý cỏc điểm sau khi thực hiện AB

f) SETB 0E7H là dành cho SETB ACC.7 (bít D7 của thanhghi A) 8.1.3 Kiểm tra một bớt đầu và

8.1.3 Kiểm tra một bớt đầu và

LƯnh JNB (nhảy nếu bít = 0) và JB (nhảy nếu bớt bằng 1) cũng là các phép thao tác đơn bớt đợc sử dụng rộng r[ị Chúng cho phép ta hiển thị một bớt và thực hiện quyết định phụ thuộc vào viƯc liƯu nó là 0 hay là 1.

Ví dụ 8.3: giả sử bớt P2.3 là một đầu vào và biểu diễn điều kiện của một lụ. Nếu nú bật lờn 1 thỡ cú nghĩa là lụ núng. H[y hiển thị liờn tục, mỗi khi nú lờn cao thỡ h[y gửi một xung cao-xng-thấp (Aigh-to-low) đến cỉng P1.5 đĨ bật cũi bỏ

Lời giải:

HERE: JNB P2.3, HERE ; Duy trì hiĨn thị caọ SETB P1.5 ; Thiết lập P1.5 = 1

CLR P1.5 ; Thực hienĐ chun xung từ cao-xng-thấp

Cỏc lệnh JNB và JB cú thể đợc dựng đối với cỏc bớt bất kỳ của cỏc cổng I/O 0, 1, 2 và 3 vỡ tất cả cỏc cổng này đều cú khả năng đỏnh địa chỉ theo bít. Tuy nhiên, cỉng 3 hầu nh− để dựng cho cỏc tớn hiệu ngắt và truyền thụng nối tiếp và thụng thờng khụng dựng cho bất cứ vào/ ra theo bớt hoặc theo byte nà Điều này sẽ đợc bàn ở chơng 10 và 11.

8.1.4 Cỏc thanh ghi và khẳ năng đỏnh địa chỉ theo bớt.

Trong tất cả cỏc cổng I/O đều cú khả năng đỏnh địa chỉ theo bớt thỡ cỏc thanh ghi lại khụng đợc nh vậ Ta cú thể nhỡn thấy điều đú từ hỡnh 8.1: Chỉ thanh gh B, PSW, IP, IE, ACC, SCON và TCON là có thể đỏnh địa chỉ theo bớt, ở đõy ta sẽ tập trung vào cỏc thanh ghi A, B và PSW cũn cỏc thanh ghi khỏc sẽ đề cập ở cỏc chơng sa Từ hỡnh 8.1 h[y để ý rằng cổng PO đợc gỏn địa chỉ bớt 80H-87H. Cũn đại chỉ bớt 88-8FH đợc gỏn cho thanh ghi TCON.

Cuối cựng địa chỉ bớt F0-F7H đợc gỏn cho thanh ghi B. Xột vớ dụ 8.4 và 8.5 vỊ viƯc sư dụng cỏc thanh ghi này với khả năng đỏnh địa chỉ theo bít.

Hình 8.1: Địa chỉa theo Byte và bít cđa bộ nhớ RAM các thanh ghi chức năng đặc biệt.

Ví dụ 8.4: H[y viết chơng trỡnh để kiểm tra xem thanh ghi tớch luỹ có chứa một số chẵn khụng? Nếu cú thỡ chia nú cho 2, nếu khụng thỡ h[y làm chẵn nú và sau đú chia nó cho 2.

Lời giải:

MOV B, # 2 ; Gán B = 2

JNB ACC 0, YES ; DO của thanh ghi A có bằng 0? JNC A ; Nếu cú thỡ nhảy về YES

Byte ađress Bit ađress FF F0 E7 F6 F5 F4 F3 F2 F1 F0 B E0 E7 E6 E5 E4 E3 E2 E1 E0 ACC D0 D7 D6 D5 D4 D3 D2 D1 D0 PSW B8 - - - - - - BC BB BA B9 B8 IP B0 B7 B6 B5 B4 B3 B2 B1 B0 F3 A8 AF - - - - AC AB AA A9 A8 IE A0 A7 A6 A5 A4 A3 A2 A1 A0 P2

99 not bit ađressable SBUF

Một phần của tài liệu GIÁO TRÌNH VI XỬ LÝ 8051 pdf (Trang 88 - 89)