Tải bản đầy đủ (.pptx) (28 trang)

Máy tính cộng trừ 4 chữ số

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (961.44 KB, 28 trang )

TRƯỜNG ĐẠI HỌC GIAO THÔNG VẬN TẢI THÀNH PHỐ HỒ CHÍ MINH
BÁO CÁO:
BÀI TẬP LỚN KỸ THUẬT VI XỬ LÝ
Chủ đề: Máy tính cộng trừ 4 chữ số
M á y t í n h c ộ n g t r ừ
* Nội dung:
 
 



 !"

#$%&'()*+
#,-'.!(/0!12')3)
#4-5.'67
#8!13829:;0382(<=>
M á y t í n h c ộ n g t r ừ
I. Giới thiệu phần cứng:

,<+-?
2 @+--5.7
/@+-!AB-C
 @+-3DB=

E<+-F2G
M á y t í n h c ộ n g t r ừ
a. Khối hiển thị LCD:
7H-I-'$*2B7-*!B2$JKL*DM'&'K-2$NO7PG2$BG-O7
-G<Q0$2$7;R-A%?S-'&-F28KL*DM'9-'
;--<-5@:?-C.F27B0'92GT'>I2HAT*+;0-BG-<=>U2


<JTV02;0GM--2<2T-0'W
M á y t í n h c ộ n g t r ừ
a. Khối hiển thị LCD: (tt)
EX
 Y**X+-97T<--N<NG2+-X0$;R-,Q7F2G-<-5
 Y77X9!7T<--N<NG2+-X0$;R-YZ[YF2
G-<-5
 YOO\-]&E!:F27
) ^XU2-H^-*'*BJ
_-`abc*7ca#7cP*d+-;R-2-BC^F27
_-`bc*7ca#7cP*d+-;R-2-AB-C7^/6'7
M á y t í n h c ộ n g t r ừ
a. Khối hiển thị LCD: (tt)
EX
[^eXUN&Uf-H^2fe'-JQ+-X^fe;R-B-`ab57G
&gN&-Th+-;R-B-`b57gN&U
iOX!j!HO2/BJ
P7ca#7cP
klF2/*AB-Cm5'2S- n;R-7
M á y t í n h c ộ n g t r ừ
/@+-!AB-C

2'!1)3)io/9L<N+-0)0;0)&

\5U-'.F2!1/92*d*DM`Ij!1b8Ij!1B0Ij
&2$Ij0pX$2!E!!Ij0
M á y t í n h c ộ n g t r ừ
c. 
q@cO^r/6'
qc$^&-

)'39f!frq/-
,-2nN!+-nN!
i)@c;mRK0-
i)@c;mRAB-CG-
sDB1cB2HG&'6/-EJ
a;.'1R85.;./-
)t*G&Xh-2
M á y t í n h c ộ n g t r ừ
II. Phần mềm:
2 4L!A
\.u2XF2qa[
N1 EQU 40H
N2 EQU 41H
N3 EQU 42H
N4 EQU 43H
N5 EQU 44H
N6 EQU 45H
N7 EQU 46H
N8 EQU 47H
N9 EQU 48H
Các ô nhớ từ 40H đến 47H tương ứng với N1 đến N8
Các ô nhớ này sẽ lưu số được nhập
M á y t í n h c ộ n g t r ừ
2 4L!AHvJ
\.u2XF2qa[
N11 EQU 60H
N21 EQU 61H
N31 EQU 62H
N41 EQU 63H
N51 EQU 64H

N61 EQU 65H
N71 EQU 66H
N81 EQU 67H
Các ô từ N11 đến N81 sẽ lưu các số đã được xử lý.
M á y t í n h c ộ n g t r ừ
2 4L!AHvJ
\.u2XF2qa[
RES0 EQU 50H
RES1 EQU 51H
RES2 EQU 52H
RES3 EQU 53H
RES4 EQU 54H
Num1 EQU 55H
Num2 EQU 56H
Các ô từ RES0 đến RES4 sẽ lưu kết quả sau khi tính.
Num1, Num2 lưu số chữ số của số thứ 1 và số thứ 2.
DIF BIT 0AH ;đánh dấu phím nhập là số
OIF BIT 0BH ;đánh dấu phím nhập là dấu
DEL BIT 0DH ;phím nhập là Del
AIF BIT 0CH ;phím nhập là dấu “=”
M á y t í n h c ộ n g t r ừ

Lưu đồ thuật toán chương trình chính
Khởi tạo LCD
Xuất chữ
Xóa màn hình
Xóa các ô nhớ
Nhập số vào các ô nhớ và
gởi lên LCD
Tính toán


START
Xuất ra màn hình
LCD

M á y t í n h c ộ n g t r ừ

chương trình chính
ORG 30H
MAIN:
ACALL KHOI_TAO_LCD
ACALL XUAT_CHU
MAIN1:
ACALL XOA_O_NHO ; cho các ô nhớ cần sử dụng bằng 0
ACALL KHOI_TAO_LCD
ACALL NHAP ;Nhập và đưa lên LCD ACALL TINH_TOAN
ACALL XUAT_KET_QUA AJMP MAIN1
M á y t í n h c ộ n g t r ừ

Khởi tạo LCD:
Ghi giá trị DPTR trỏ tới vào ACC
Ghi giá trị của ACC vào port 2
Xóa thanh ghi ACC
A=0?
Start
Đưa con trỏ DPTR đến bảng có mã khởi
động
RET
Y
N

M á y t í n h c ộ n g t r ừ

chương khởi tạo LCD
CLR RS ;Chọn chế độ gởi lệnh
MOV DATA_LCD,#38H ;Chọn bus 8bit, font ký tự 5x8, 2 hàng
LCALL LENH ;Gọi lệnh thực thi xuất ra LCD
LCALL WAIT_LCD ;Kiểm tra trạng thái bận của LCD
CLR RS ;Chọn chế độ gởi lệnh
MOV DATA_LCD,#0FH ;LCD on, bật cursor
LCALL LENH ;Gọi lệnh thực thi xuất ra LCD
LCALL WAIT_LCD
RET
M á y t í n h c ộ n g t r ừ

Chương trình nhập số vào các ô nhớ và gửi lên LCD
2<-!1L9w-'.!19LB;0
#Y0E'w<-5'2
#9n6!:-B0*+h!1`bH3820/&T'g;E'w1JNB0!1<w
/Bx-
#QN&'B9BTT)B09`_bh`#bw*d!:-9*+QN< w/Bx-
#2<-93*+;R-*+B9+-2B0)w!:-9`Zb282'"3+y;0%

M á y t í n h c ộ n g t r ừ

Chương trình tính toán:
TÍNH TOÁN
DAU=”+”
TÍNH CỘNG
TÍNH TRỪ
RET

N
Y
@-5'239L!;0B0`_b2$`#b5%
M á y t í n h c ộ n g t r ừ

 !"#$#%&
A=(N41)+(N81)
'( )
Chia A cho 10
Nạp phần dư vào (RES4)
TÍNH CỘNG
A=A+(N31)+(N71)
Nạp phần dư vào (RES3)
A=A+(N21)+(N61)
RET
Chia A cho 10
Chia A cho 10
Nạp phần dư vào (RES2)
A=A+(N11)+(N51)
Nạp phần dư vào (RES1)
Nạp phần dư vào (RES)

SIGN= “+”
(Phép tính có kết quả dương)

M á y t í n h c ộ n g t r ừ

 !"#$#*&
Y
Y

Y
Y
SIGN= “-”
Y
Y
N11>N51
N21>N61
N31>N71
N11=N51
PHÉP TRỪ
N21=N61
N31=N71
N41=N81N41>N81
Hoán đổi
Hoán đổi
Tính bình thường
SIGN= “+”
SIGN= “-”
Y
Y
M á y t í n h c ộ n g t r ừ

+,-./'01
A=RES4 ;DATA WRT
RET
XUẤT RA LCD
SIGN=”+”
RES=0
RES1=0
RES2=0

RES3=0
A=RES ;DATA WRT
A=RES1 ;DATA WRT
A=RES2 ;DATA WRT
A=RES3 ;DATA WRT
Y
Y
Y
Y
A=“-” ;DATA WRT
Y
M á y t í n h c ộ n g t r ừ

2'*,3!
4567*8#39
1':;1;
<'01
:)=
>9:9?)
@+9'01
>9A:)
>9A:9A?)

@+9'01
@+B+'01
@+9A'01

>
>


M á y t í n h c ộ n g t r ừ
II. Phần mềm:
8& B<
'86 
z-B{2q|3[}
z-B{*'-}
z-B{*B-/}
z-B{$!}
z~OQ•a
z~^e•
z~^•
ff^eZaZ}-
ff^eZZ}
ff^ZaZ}
ff^ZZ}22
z~7•r^k
*/-aZ€a•
*/-Z€•
*/-Z€•
*/-Z€•
*/-2aZ€)•
*/-2Z€[•
*/-2Z€i•
*/-2Z€P•
-*v!-•
*-2'2•
M á y t í n h c ộ n g t r ừ
8& B<CDE
F9G"01
;-7e'-H*-2'J


^Za•
^eZa•
7•r^kZ•
OQZ•
OQZa•
B2$•[*HJ•
ƒ
F9B''01
;-7e'-722H*-2'J

^Z•
^eZa•
7•r^kZ•
OQZ•
OQZa•
B2$HaaaJ•
ƒ
M á y t í n h c ộ n g t r ừ
8& B<CDE
F9+,-./'01
;-7„'--HBJ
‚*---T…•
*-2'2†[‡•
2†)‡Zˆa•
Zfa•
2†‡Zˆa•ff-2B2$!2T
Zfa• ff-2B2$!2$
2†‡Zˆa• 
Zfa• 

2†‡Zˆa•
Zfa•
2†a‡Zˆa• 
‰'H-Za•-{[•-__J

-‰H2†-‡ŠZaJ
/'2<•
ƒ
‰'H…Z-•…{[•…__J

7e'-722H)q_2†…‡J•
ƒ
ƒ
M á y t í n h c ộ n g t r ừ
8& B<CDE
3
;-2-H;-J

B•
B•
B@‹•
*-2'*-•
*-2'--•
--T<T…•
<Za•
-Za•
 7•--HJ•
7e'-Ha3aJ•
7e'-Ha3qaJ•
7•!*'HŒc2-2!BYsŒJ•

B2$HaaaaJ•
7e'-Ha3aJ•
7e'-Ha3qaJ•
7•!*'HŒ•#,^rŽ#•ŒJ•
B2$H[aaaJ•
7e'-Ha3aJ•

e-BHJ

ffIj!1;0%
ff39<NI:'27
ƒ


×