Tài liệu Lập trình cho 8051: Số học và p lôgic - Pdf 92

Lập trình cho 8051: Số học và p
lôgic
Bài 4
Bộ môn TĐ
Khoa KTĐK
Các chủ đề
• Phép tính số học có dấu và không dấu
•Số nhị phân và mã BCD
•Lệnh cộng
•Lệnh trừ
•Lệnh nhân
•Lệnh chia
• Các phép toán lôgic
• Các phép toán quay vòng và dịch
Đị hỉ hábộ hớ th bitàálệ h đ bit• Địa chỉ hoá bộ nhớ theo bit và các lệnh đơn bit
Phép cộng không dấu
• Add A, source ; A=A+source
• Có nhớ thì bit nhớ đư
ợc lưu vào cờ CYợ
mov A, #0F5H
add A
, #0BH ; A=F5+B0=00, CY=1, ;,
• Phép cộng số 16 bit
– Addc A, source ; A=A+source+CY, ;
–Cộng các byte thấp sử dụng lệnh add
– Ghi kết quả
–cộng các byte cao hơn sử dụng addc
Phép cộng không dấu
•Ví dụ về phép cộng 16 bitụ ppộ g
•Cộng UUVV và PPQQ
clr C

Phép trừ không dấu
• Subb x, y ; x=x-y có mượn từ CY
• Thao tác:
–Biến đổi số bị trừ sang số bù hai (y)
–Cộng nó với số trừ (x)
Nếucờ CY đượcthiếtlập sau khi thựchiện phép trừ thì kết– Nếu cờ CY được thiết lập sau khi thực hiện phép trừ, thì kết
quả là một số âm và đưa ra kết quả là số bù hai
•lệnh subb thực hiện trừ có mượn, nếu CY được thiết
ểlập trước lệnh call. Được sử dụng để thực hiện phép
trừ số 16 bit
Để thựchiện phép trừ đơngiản xoá CY trước khi gọilệnh– Để thực hiện phép trừ đơn giản, xoá CY trước khi gọi lệnh
subb
Phé ừ khô dấPhép trừ không dấu
•Ví dụ
clr c ; clear CY for sub operation
mov A, #4CH ;
subb A, #6EH ; two operands, do 4C – 6E
jnc done ; if CY==0 result is positivejnc done ; if CY==0 result is positive
cpl A ; CY=1, result negative. So find 2’s complement
inc A ; by complementing A and adding 1 to it
done: mov R1, A ; final result in R1
•Trừ 16 bit 2762H-1296H
clr C ; clear Cy
mov A, #62H ;
subb A #96H ; 62H – 96H = CCH and CY=1subb A, #96H ; 62H 96H CCH and CY 1
mov R7, A ; store the lower byte of the result in R7
mov A, #27H ; now subtract the upper bytes
subb A, #12H ; 27H – 12H – 1 = 14H
mov R6
, A ; store upper byte of result in R6., ;ppy


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status