实验五文档格式.docx

上传人:b****4 文档编号:17871869 上传时间:2022-12-11 格式:DOCX 页数:6 大小:17.37KB
下载 相关 举报
实验五文档格式.docx_第1页
第1页 / 共6页
实验五文档格式.docx_第2页
第2页 / 共6页
实验五文档格式.docx_第3页
第3页 / 共6页
实验五文档格式.docx_第4页
第4页 / 共6页
实验五文档格式.docx_第5页
第5页 / 共6页
点击查看更多>>
下载资源
资源描述

实验五文档格式.docx

《实验五文档格式.docx》由会员分享,可在线阅读,更多相关《实验五文档格式.docx(6页珍藏版)》请在冰豆网上搜索。

实验五文档格式.docx

ADD+

ADDC带C+

SUBB带C-

(2)操作数:

如右图,以A为目的操作数

 

(3)指令描述举例:

不带进位加法ADD4条

ADDA,Rn;

(A)&

#8592;

(A)+(Rn)

带进位加法指令ADDC4条

ADDCA,direct;

(A)+(direct)+(CY)

带进位减法指令SUBB4条

SUBBA,@Ri;

(A)&

(A)-((Ri))-(CY)

SUBBA,#data;

(A)-#data-(CY)

实验内容3-11:

设(A)=D3H,(30H)=E8H

执行:

ADDA,30H

写出结果:

CY=?

,AC=?

,P=?

,OV=?

,(A)=?

实验内容3-12:

设(A)=88H,(30H)=99H,CY=1

ADDCA,30H

结果:

,(A)=

实验内容3-13:

设(A)=49H,CY=1,

,P=0,OV=?

,(A)=?

实验内容3-14:

试编制4位十六进制数加法程序,假定和数超过双字节

(21H20H)+(31H30H)&

#8594;

42H41H40H

分析:

先低字节作不带进位求和,再作带进位高字节求和。

写出程序

2、加1减1指令

助记符:

INC,DEC

操作数:

A,direct,@Ri,Rn,DPTR

指令描述:

(不影响PSW,即使有进位或借位,CY也不变,除A影响P标志)

(1)INC:

加15条

INCA;

(A)+1

INCRn;

(Rn)&

(Rn)+1

INC@Ri;

((Ri))&

((Ri))+1

INCdirect;

(direct)&

(direct)+1

INCDPTR;

(DPTR)&

(DPTR)+1

(2)DEC:

减14条

DECA;

(A)—1

DECRn;

(Rn)—1

DEC@Ri;

((Ri))—1

DECdirect;

(direct)

实验内容3-15:

编制下列减法程序,要求:

(31H30H)—(41H40H)&

31H30H

3、十进制调整指令

格式:

DAA

指令用于两个BCD码加法运算的加6修正,只影响CY位。

指令的使用条件:

(1)只能紧跟在加法指令(ADD/ADDC)后进行

(2)两个加数必须已经是BCD码

(3)只能对累加器A中结果进行调整加6修正的依据:

由CPU判CY、AC是否=1?

A的高、低4位是否大于9?

例如:

(A)=56H,(R5)=67H,(BCD码)执行:

ADDA,R5

DAA

(A)=23H,(CY)=1

实验3-16:

试编制十进制数加法程序(单字节BCD加法),假定和数为单字节,要求:

(20H)+(21H)&

22H

分析:

流程如右图

4、乘除法指令

唯一两条单字节4机器周期的指令。

(1)8位无符号数乘法指令

MULAB;

(B15~8)(A7~0)&

(B)

PSW:

1)若乘积大于256,OV=1;

否则OV=0;

2)CY总是清&

0&

例如:

(A)=50H,(B)=A0H,执行MULAB后

(B)=32H,(A)=00H,(OV)=1

(2)8位无符号除法指令

DIVAB;

(A)&

(A/B)的(商);

(B)&

(A/B)的(余数)

PSW:

1)CY、OV,清&

2)若(B)=0,OV=1。

(A)=2AH,(B)=05H,执行DIVAB后

(A)=08H,(B)=02H,(OV)=0

实验内容3-17:

编制将A中的数转换成三位BCD码程序,百位放在20H,十位、个位放在21H中。

(A)/100&

商(百位)&

(20H);

余数/10&

商(十位)&

(21H);

余数(个位)&

流程如右图

请写出程序

三、逻辑运算指令

1、基本与、或、异或运算指令

(1)指令助记符:

ANL、ORL、XRL

(2)指令描述举例:

逻辑&

与&

指令6条

ANLA,Rn;

(A)∧(Rn)

ANLA,direct;

(A)∧(direct)

或&

ORLA,@Ri;

(A)∨((Ri))

ORLA,#data;

(A)∨data

异或&

XRLdirect,A;

(direct)&

#8853;

(A)

XRLdirect,#data;

data

当用于修改输出口(P0~P3)时,direct指口锁存器的内容而不是端口引脚电平。

2、对A简单逻辑指令

1)清零与取反

CLRA;

清0

CPLA;

求反

2)循环移位指令

RLA;

RLCA;

RRA;

RRCA;

实验内容3-18:

按要求编程,完成下列各题:

1)选通工作寄存器组中0区为工作区。

2)利用移位指令实现累加器A的内容乘6。

3)将ACC的低4位送P1口的低4位,P1口的高4位不变。

实验内容3-19:

设在外RAM2000H中放有两个BCD数,编程,使这两个BCD码分别存到2000H和2001H的低4位中。

四、控制转移指令(22条)

无条件转移应用

2、条件转移指令

根据某种条件判断转移的指令,执行时:

条件满足时,转移执行;

条件不满足时,顺序执行;

1)判A转移,2字节

JZrel;

条件:

(A)=0

JNZrel;

#8800;

2)判Bit转移,3字节

JBbit,rel;

(bit)=1

JNBbit,rel;

(bit)=0

JBCbit,rel;

(bit)=1转移,并清bit位

3、比较不相等转移指令

CJNEA,direct,rel;

CJNEA,#data,rel;

CJNERn,#data,rel;

CJNE@Ri,#data,rel;

执行时:

1)两操作数相等,顺序执行,且CY=0。

2)两操作数不相等,转移执行,且对于无符号数若:

第一操作数<第二操作数,CY=1,否则CY清&

目的地址:

(PC)=rel

4、减&

1&

不为0转移指令

又称循环转移指令,主要用来构成循环结构,有2条:

DJNZRn,rel;

2字节指令,2周期指令

DJNZdirect,rel;

3字节指令,2周期指令

五、实验步骤

1、分别编写调用程序,然后在开发环境中编译运行,写出实验内容的结果

六、实验报告

2、给出各个程序的清单,要求有注释。

3、MCS-51系列单片机控制转移指令有哪些?

列出这些指令,并说明其功能。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 职业教育 > 职高对口

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1