单片机实验程序 可直接复制.
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(2)、利用 MOVC A,@A+PC 指令查表 程序如下: ORG 1050H
START:MOV A, 40H; ADD A, #04H; MOVC A, @A+PC; MOV 41H, A;
HERE:SJMP HERE; SQR:DB 00H,01H,04H,09H,16H DB 25H,36H,49H,64H,81H END
)
若将 DA A 指令用NOP代替,则执行后
A=(
),PSW=(
)
6、用乘法指令 MUL AB 进行 0FFH*03H
程序如下:
ORG 1250H
SUBROUT:MOV A, #0FFH;
MOV B, #03H; MUL AB;
NOP;
NOP; HERE:SJMP HERE
END
课程:单片机技术实验 教材:《EDA与单片机技术》实验指导书
程序如下:
ORG 1020H
START:MOV DPTR, #SQR;
MOV A,
40H;
MOVC A,
@A+DPTR;
MOV 41H, A;
HERE:SJMP HERE;
SQR:DB 00H,01H,04H,09H,16H
DB 25H,36H,49H,64H,81H
END
课程:单片机技术实验 教材:《EDA与单片机技术》实验指导书
本实验通过单步执行程序中各类指令,来进一步学习和理解 各类主要指令的功能,掌握指令的用法。
通过实验掌握Keil软件的使用方法。
课程:单片机技术实验 教材:《EDA与单片机技术》实验指导书
二、实验准备 1、启动稳压电源,确认输出电压正常。 2、将微机实验开发系统与直流稳压电源连接好。
三、实验内容 将以下各部分实验中所给出的程序的指令机器代码查出,并
ቤተ መጻሕፍቲ ባይዱ
执行后 A=(
),“或”指令有何作用?
课程:单片机技术实验 教材:《EDA与单片机技术》实验指导书
3、逻辑“异或”指令实验。
程序如下:
ORG 1500H
SUBROUT:MOV A, #55H;
),A=(
)
课程:单片机技术实验 教材:《EDA与单片机技术》实验指导书
3、体会查表指令MOVC A,@A+DPTR,MOVC A,@A+PC的功能和
用法。
设定40H单元中的内容为0~9之间的一个整数,用查表的方
法求出它的平方值(BCD码),结果存入41H单元。
(1)、利用MOVC A, @A+DPTR指令查表
执行后 A=(
),B=(
),将2个空操作指令换
成MOV A,B执行后A=(
),B=(
),最后0FFH*03H=
(
),是否等于B与A的内容的积(
)。
(二)、逻辑运算和循环指令
1、逻辑“与”指令实验。
程序如下:
ORG 1300H
SUBROUT:MOV A,
#0FBH;
ANL A, #0FH;
HERE:SJMP HERE;
END
执行后 A=0BH,实验结果是否正确?“与”指令有何作用?
课程:单片机技术实验 教材:《EDA与单片机技术》实验指导书
2、逻辑“或”指令实验。
程序如下:
ORG 1400H
SUBROUT:MOV R1, #0FH;
MOV A, #33H;
ORL A, R1;
HERE:SJMP HERE;
END
课程:单片机技术实验 教材:《EDA与单片机技术》实验指导书
步骤:1)、仔细阅读程序并进行手工汇编。
2)、将程序输入单片机实验开发系统。
3)、建立平方值表。 4)、在40H单元键入00~09之间的随机整数,分别执行
上述两个程序,检查41H单元的值。
41H=(
), 41H=(
)
4、用加法指令ADD A,R0实现两数相加,如52H+FCH。 程序如下:
执行后 A=(
),PSW=(
)
5、体会十进制调整指令 DA A 的功能和用法
程序如下:
ORG 1200H
SUBROUT:MOV A, ADD A,
#65H; #58H;
DA
A;
HERE:SJMP HERE;
END
课程:单片机技术实验 教材:《EDA与单片机技术》实验指导书
执行后 A=(
), PSW=(
程序如下:
ORG 1150H
SUBROUT:MOV A, #52H; MOV R0, #0CH;
SETB C;
ADDC A, R0;
HERE:SJMP HERE; END
课程:单片机技术实验 教材:《EDA与单片机技术》实验指导书
执行后 A=(
),PSW=(
)
若将 SETB C 指令改为 CLR C
SUBROUT:MOV 40H, #0FH; 0FH送入RAM 40H单元中 MOV R0, 40H; 40H单元内容送R0 MOV A, R0; R0内容送累加器A
HERE:SJMP HERE; END
A=( 40H ),40H=( 0FH ),R0=( 40H )
课程:单片机技术实验 教材:《EDA与单片机技术》实验指导书
输入到单片机系统中,然后从程序给定地址开始单步执行,观察 并记录程序所指定的内容。
课程:单片机技术实验 教材:《EDA与单片机技术》实验指导书
(一)、数据传送与算术运算 1 、 体 会 MOV Rn, direct 指 令 的 功 能 和 用 法 , 取
n=0,direct=40H。 程序如下: ORG 1000H
2、体会MOV @Ri,#DATA指令的功能和用法,选择DATA=0FH,i=0
。
程序如下: ORG 1010H
SUBR:MOV R0, #50H; R0←50H
MOV @R0, #0FH; (R0)←0FH
MOV A, 50H; HERE:SJMP HERE;
A←(50H)
END
R0=(
),50H=(
课程:单片机技术实验 教材:《EDA与单片机技术》实验指导书
MCS-51系列单片机指令学习
一、实验目的 MCS-51系列单片机指令系统共有111条汇编语言指令,这些
指令按功能的不同可分为五类:29条数据传送类指令,24条算术 运算类指令,24条逻辑运算类指令,17条控制转移类指令和17条 位操作类指令。
ORG 1100H
SUBROUT:MOV A, #52H ; A←52H
MOV R0, #0FCH; R0←0FCH
ADD A, R0;
A←(A)+(R0)
课程:单片机技术实验 教材:《EDA与单片机技术》实验指导书
HERE:SJMP
HERE;
END
A=(
), PSW=(
)
用带进位加法指令 ADDC A,R0实现52H与0CH之和。
START:MOV A, 40H; ADD A, #04H; MOVC A, @A+PC; MOV 41H, A;
HERE:SJMP HERE; SQR:DB 00H,01H,04H,09H,16H DB 25H,36H,49H,64H,81H END
)
若将 DA A 指令用NOP代替,则执行后
A=(
),PSW=(
)
6、用乘法指令 MUL AB 进行 0FFH*03H
程序如下:
ORG 1250H
SUBROUT:MOV A, #0FFH;
MOV B, #03H; MUL AB;
NOP;
NOP; HERE:SJMP HERE
END
课程:单片机技术实验 教材:《EDA与单片机技术》实验指导书
程序如下:
ORG 1020H
START:MOV DPTR, #SQR;
MOV A,
40H;
MOVC A,
@A+DPTR;
MOV 41H, A;
HERE:SJMP HERE;
SQR:DB 00H,01H,04H,09H,16H
DB 25H,36H,49H,64H,81H
END
课程:单片机技术实验 教材:《EDA与单片机技术》实验指导书
本实验通过单步执行程序中各类指令,来进一步学习和理解 各类主要指令的功能,掌握指令的用法。
通过实验掌握Keil软件的使用方法。
课程:单片机技术实验 教材:《EDA与单片机技术》实验指导书
二、实验准备 1、启动稳压电源,确认输出电压正常。 2、将微机实验开发系统与直流稳压电源连接好。
三、实验内容 将以下各部分实验中所给出的程序的指令机器代码查出,并
ቤተ መጻሕፍቲ ባይዱ
执行后 A=(
),“或”指令有何作用?
课程:单片机技术实验 教材:《EDA与单片机技术》实验指导书
3、逻辑“异或”指令实验。
程序如下:
ORG 1500H
SUBROUT:MOV A, #55H;
),A=(
)
课程:单片机技术实验 教材:《EDA与单片机技术》实验指导书
3、体会查表指令MOVC A,@A+DPTR,MOVC A,@A+PC的功能和
用法。
设定40H单元中的内容为0~9之间的一个整数,用查表的方
法求出它的平方值(BCD码),结果存入41H单元。
(1)、利用MOVC A, @A+DPTR指令查表
执行后 A=(
),B=(
),将2个空操作指令换
成MOV A,B执行后A=(
),B=(
),最后0FFH*03H=
(
),是否等于B与A的内容的积(
)。
(二)、逻辑运算和循环指令
1、逻辑“与”指令实验。
程序如下:
ORG 1300H
SUBROUT:MOV A,
#0FBH;
ANL A, #0FH;
HERE:SJMP HERE;
END
执行后 A=0BH,实验结果是否正确?“与”指令有何作用?
课程:单片机技术实验 教材:《EDA与单片机技术》实验指导书
2、逻辑“或”指令实验。
程序如下:
ORG 1400H
SUBROUT:MOV R1, #0FH;
MOV A, #33H;
ORL A, R1;
HERE:SJMP HERE;
END
课程:单片机技术实验 教材:《EDA与单片机技术》实验指导书
步骤:1)、仔细阅读程序并进行手工汇编。
2)、将程序输入单片机实验开发系统。
3)、建立平方值表。 4)、在40H单元键入00~09之间的随机整数,分别执行
上述两个程序,检查41H单元的值。
41H=(
), 41H=(
)
4、用加法指令ADD A,R0实现两数相加,如52H+FCH。 程序如下:
执行后 A=(
),PSW=(
)
5、体会十进制调整指令 DA A 的功能和用法
程序如下:
ORG 1200H
SUBROUT:MOV A, ADD A,
#65H; #58H;
DA
A;
HERE:SJMP HERE;
END
课程:单片机技术实验 教材:《EDA与单片机技术》实验指导书
执行后 A=(
), PSW=(
程序如下:
ORG 1150H
SUBROUT:MOV A, #52H; MOV R0, #0CH;
SETB C;
ADDC A, R0;
HERE:SJMP HERE; END
课程:单片机技术实验 教材:《EDA与单片机技术》实验指导书
执行后 A=(
),PSW=(
)
若将 SETB C 指令改为 CLR C
SUBROUT:MOV 40H, #0FH; 0FH送入RAM 40H单元中 MOV R0, 40H; 40H单元内容送R0 MOV A, R0; R0内容送累加器A
HERE:SJMP HERE; END
A=( 40H ),40H=( 0FH ),R0=( 40H )
课程:单片机技术实验 教材:《EDA与单片机技术》实验指导书
输入到单片机系统中,然后从程序给定地址开始单步执行,观察 并记录程序所指定的内容。
课程:单片机技术实验 教材:《EDA与单片机技术》实验指导书
(一)、数据传送与算术运算 1 、 体 会 MOV Rn, direct 指 令 的 功 能 和 用 法 , 取
n=0,direct=40H。 程序如下: ORG 1000H
2、体会MOV @Ri,#DATA指令的功能和用法,选择DATA=0FH,i=0
。
程序如下: ORG 1010H
SUBR:MOV R0, #50H; R0←50H
MOV @R0, #0FH; (R0)←0FH
MOV A, 50H; HERE:SJMP HERE;
A←(50H)
END
R0=(
),50H=(
课程:单片机技术实验 教材:《EDA与单片机技术》实验指导书
MCS-51系列单片机指令学习
一、实验目的 MCS-51系列单片机指令系统共有111条汇编语言指令,这些
指令按功能的不同可分为五类:29条数据传送类指令,24条算术 运算类指令,24条逻辑运算类指令,17条控制转移类指令和17条 位操作类指令。
ORG 1100H
SUBROUT:MOV A, #52H ; A←52H
MOV R0, #0FCH; R0←0FCH
ADD A, R0;
A←(A)+(R0)
课程:单片机技术实验 教材:《EDA与单片机技术》实验指导书
HERE:SJMP
HERE;
END
A=(
), PSW=(
)
用带进位加法指令 ADDC A,R0实现52H与0CH之和。