实验6 模拟温度测量软件设计

网友投稿 225 2022-10-31


实验6 模拟温度测量软件设计

一、实验目的 (1)熟悉并掌握汇编语言的基本指令及编程方法。 (2)掌握用汇编语言编写程序(某一课题)的思路和设计方法。 (3)熟练掌握用DEBUG调试程序的方法。 二、实验内容 1.设计课题 模拟温度测量软件设计。 2.设计要求 (1)将从首地址1000H开始存放的10个单字节数组(假设对某一点的温度测量10次,经温度传感器、A/D转换器采集的电压量已转换为对应的温度值)进行数字滤波。实现的方法是:找出其中的最大值(设子程序名为ZMAX)存入MAX和最小值(设子程序名为ZMIN)存入MIN,并从10个数中去掉最大值和最小值,将剩余的8个数取平均值后存放在1010H单元中。(设子程序名为Z1) (2)将存放在1010H单元中的十六进制数的整数部分转换成非压缩BCD码,并存放在从1020H开始的存储单元中(低位在前,高位在后)。(设子程序名为Z2) (3)将存放在1020H单元中的非压缩BCD码数转换成ASCII码,并存放在从1030H开始的存储单元中(低位在前,高位在后)。(设子程序名为Z3) (4)将存放在1030H单元中的ASCII码显示在屏幕上(高位在前,低位在后)。(设子程序名为Z4,使用字符串显示。) 3.程序结构及编程(预习程序附纸,最终完成实验报告。) 提示:(1)首先完成各个子程序的编程,注意子程序的入口参数和出口参数。 (2)完成各个子程序的调试工作,保证各个子程序功能正常。 (3)参照给出参考程序框架完成课题提出的设计要求。

DATA SEGMENTORG 1000HSZ1 DB 0A3H,0A8H,0B0H,9FH,9EH,0B1H,0AFH,0ADH DB 0A7H,0A8HMAX DB 0MIN DB 0ORG 1010H SZ2 DB 0ORG 1020H SZ3 DB 0, 0,0ORG 1030HSZ4 DB 0, 0, 0DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATAST1: MOV AX,DATA MOV DS,AX CALL ZMAX CALL ZMIN CALL Z1 MOV sZ2,AL CALL Z2 CALL Z3 CALL Z4 MOV AH,4CH INT 21H ZMAX PROC NEAR LEA SI, SZ1 MOV CX,9 MOV AL, [SI] LP2: INC SI CMP AL ,[SI] JAE LP1 MOV AL ,[SI] LP1: LOOP LP2 MOV MAX,AL RETZMAX ENDPZMIN PROC NEAR LEA SI, SZ1 MOV CX ,9 MOV AL , [SI] LP4: INC SI CMP AL ,[SI] JBE LP5 MOV AL,[SI] LP5: LOOP LP4 MOV MIN ,AL RETZMIN ENDP Z1 PROC NEAR ;平均 LEA SI, SZ1 MOV CX ,10 MOV AX, 0 MOV BX, 0 ABC: MOV BL,[SI] ADD AX,BX INC SI LOOP ABC MOV BL,MAX SUB AX,BX MOV BL ,MIN SUB AX,BX MOV BL ,8 DIV BL MOV SZ2 ,AL RETZ1 ENDP Z2 PROC NEAR LEA SI,SZ3 MOV CX,0 mov DI, offset sz2 MOV AL,[DI] ; MOV BL,10;LP6:MOV AH,0 DIV BL MOV [SI],AH; INC CX INC SI CMP AL,BL JAE LP6 CMP AL,0 JE LP7 MOV [SI],AL INC CXLP7:RET Z2 ENDPZ3 PROC NEAR PUSH CX LEA SI,SZ3 LEA DI,SZ4LP8:MOV AL,[SI] ADD AL,30H;0-9加30h如果是A-F还需再加7 MOV [DI],AL INC SI INC DI LOOP LP8 POP CX RETZ3 ENDPZ4 PROC NEAR LEA SI,SZ4 ADD SI,CX DEC SIL9: MOV DL,[SI] MOV AH,02h INT 21H;AH,02H显示输出,调用DL=输出字符 DEC SI LOOP L9 RETZ4 ENDPCODE ENDSEND ST1


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:高频功率放大器的设计实现
下一篇:SpringBoot多数据库连接(mysql+oracle)的实现
相关文章

 发表评论

暂时没有评论,来抢沙发吧~