- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机 第四章作业讲解1.doc
第四章作业讲解
4-5 求8个数的平均值
设计思路:先用8次循环求8个数的和(和用两个字节表示),再将该和右移三位以实现除8运算。
方法一:
ORG 1000H
MOV R0,#30H
MOV R7,#08H
MOV R2,#00H
MOV R3,#00H
LOOP1:MOV A,R3
ADD A,@R0
MOV R3,A
MOV A,R2
ADDC A,#00H
MOV R2,A
INC R0
DJNZ R7,LOOP1
;右移3位相当于除8
MOV R7,#03H
LOOP2: CLR C
MOV A,R2
RRC A
MOV R2,A
MOV A,R3
RRC A
MOV R3,A
DJNZ R7,LOOP2
MOV 38H,R3
SJMP $
END
方法二:
ORG 0030H
START: MOV R7,#7
MOV R3,#0
MOV A,30H
MOV R0,#31H
LOOP: ADD A,@R0
JNC NEXT
INC R3
NEXT: INC R0
DJNZ R7, LOOP
MOV R2, A
;右移3位相当于除8
MOV R7,#03H
LOOP2: CLR C
MOV A,R2
RRC A
MOV R2,A
MOV A,R3
RRC A
MOV R3,A
DJNZ R7,LOOP2
MOV 38H,R3
SJMP $
END
4-6 把外部RAM的数据移入内部RAM
方法一:
ORG 1000H
MOV DPTR,#2000H
MOV R7,#50H
MOV R0,#30H
LOOP:MOVX A,@DPTR
MOV @R0,A
INC R0
INC DPL
DJNZ R7,LOOP
SJMP $
END
方法二:
MOV SP, #2FH
MOV DPTR,#2000H
MOV R7,#50H
NEXT: MOVX A,@DPTR
PUSH A
INC DPL ;或者INC DPTR
DJNZ R7,NEXT
SJMP $
END
4-7 求内部RAM数据块最小数
ORG 1000H
BLOCK DATA 30H
LEN DATA 10H
MINI DATA 20H
MOV R0,#BLOCK
MOV R7,LEN
DEC R7
MOV A,@R0
LOOOP:
CLR C
MOV B,A
SUBB A,@R0
JC NOP1
MOV A,@R0
SJMP NOP2
NOP1: MOV A,B
NOP2: INC R0
DJNZ R7,LOOP
MOV MINI,A
SJMP $
END
4-13 SIGN函数
ORG 1000H
VAR DATA 30H
FUNC DATA 31H
MOV A,VAR
JNB ACC.7,GOE
MOV FUNC,#0FFH
SJMP FINISH
GOE: JNZ GR
MOV FUNC,#0
SJMP FINISH
GR: MOV FUNC,#1
FINISH: SJMP $
END
注意:使用CJNE指令,会影响Cy位
4-16 16分支跳转
JMP16: MOV A,R3
RL A
ADD A,R3
MOV DPTR,#PRGTBL
JMP @A+DPTR
PRGTBL:LJMP ROOT00
LJMP ROOT01
LJMP ROOT02
……………………………
LJMP ROOT15
注意:LJMP Addr16和AJMP Addr11的区别
4-18 查平方表
SQR: MOV A,R3 ;R3是入口参数,也是出口参数
ANL A,#15
ADD A,#02H
MOVC A,@A+PC
MOV R3,A
RET
SQRTAB:DB 00,01,04,09,16
DB 25,36,49,64,81
DB 100,121,144,169,196
测试芯片功能
方法一:
ORG 1000H
A1 BIT P1.0
B1 BIT P1.1
C1 BIT P1.2
D1 BIT P1.3
E1 BIT P1.4
F1 BIT P1.5
G1 BIT P1.6
H1 BIT P1.7
Y1 BIT P3.0
TEST: MOV C,A1
ANL C,B1
ANL C,C
文档评论(0)