文档详情

【2017年整理】汇编语言程序设计.doc

发布:2017-06-05约5.88千字共7页下载文档
文本预览下载声明
实验报告 课程名称:单片微机原理与接口技术 指导老师:彭勇刚 成绩:__________________ 实验名称:_______________________________实验类型:________________同组学生姓名:__________ 一、实验目的和要求(必填) 二、实验内容和原理(必填) 三、主要仪器设备(必填) 四、操作方法和实验步骤 五、实验数据记录和处理 六、实验结果与分析(必填) 七、讨论、心得 汇编语言程序设计 实验目的: 1. 熟悉80C51单片微机汇编语言设计及编程技巧。 2. 掌握逻辑运算程序的设计方法。 3. 掌握求最小数和最大数程序的设计方法。 4.掌握多字节无符号十进制数加、减法程序的设计。 实验内容: 1.逻辑运算: 根据下列逻辑运算式,编写程序计算运算结果。 Y=A⊕B?C ? D+A 设: A=63H,B=82H,C=C5H,D=36H。 2.求最小数和最大数: 10个无符号数连续存放在以20H为起始地址的RAM中,找出其中的最小值存入30H单元中,找出其中的最大值存入31H单元中。 3.十进制加、减运算: 286729+652430-752196=? 在8051片内RAM的20H~22H中放入3字节被加数(低位在先)、23H~25H放入加数(低位在先)、26H~28H放入减数,结果存入2DH~2FH单元(低位在先)。 实验器材: 1. Micetek仿真器一台 2. 实验板一块 实验结果: 1.逻辑运算: 实验名称:_______________________________姓名:袁僮科 学号:3140101237 ORG 0000H 0000 7463 MAIN:MOV A,#63H ;将A值给累加器A 0002 4436 ORL A,#36H ;A与D逻辑或,即A+D存入累加器A 0004 F4 CPL A ;求 0005 F8 MOV R0,A ;将存入R0 0006 E4 CLR A ;累加器清零 0007 7482 MOV A,#82H ;将B值给累加器A 0009 7FC5 MOV R7,#0C5H ;将C值给R7 000B 5F ANL A,R7 ;B与C逻辑与,结果存入累加器A 000C F4 CPL A ;求反,即 000D 6463 XRL A,#63H ;,结果存入累加器A 000F F4 CPL A ;取反 0010 58 ANL A,R0 ; END 0000H 流程图: 执行结果如图,累加器A内存放结果为80H 实验名称:_______________________________姓名:袁僮科 学号:3140101237 2.求最小数和最大数: ORG 0000H 0000 0180 AJMP MAIN ORG 0080H 0080 7820 MAIN:MOV R0,#20H ;设数的存放首地址 0082 E6 MOV A,@R0 ;将首地址中的数送累加器A 0083 7F09 MOV R7,#09H ;设存放数的个数为10 0085 FA MOV R2,A ;设第一个数为最小数存入R2 0086 FB MOV R3,A ;设第一个数为最大数存入R3 0087 08 LOOP:INC R0 ;地址加一 0088 118E ACALL COMP ;调用子程序 008A DFFB DJNZ R7,LOOP ;判断是否已将10个数比较完 00
显示全部
相似文档