微机原理与单片机实验报告 - 图文 联系客服

发布时间 : 星期二 文章微机原理与单片机实验报告 - 图文更新完毕开始阅读

word完美格式

LOOP add_100

MOV [SI], AX JMP $

CODE ENDS END BEG

六、 编程,测试,记录程序运行结果。

total=1+2+3+4........+99+100 = 5050 =13BA H(16 进制) 验证结果是否正确

实验7 求表中正数_负数_0 的个数实验

一、 实验要求

程序中定义数组,编程实现统计数组中正数、负数与0 的个数。 二、 实验目的

1、熟悉实验系统的编程和使用。 2、掌握查表方法。 三、 实验说明

由于本实验是先在表中存放数据,其它有正数、负数和0,通过程序对表的查询,统计表中 包含正数、负数和0 的个数。 四、 实验程序流程图

精心整理 学习帮手

word完美格式

五、 参考程序 DATA SEGMENT

DBUF DB 1,2,-3,-4,-5,1,2,3,4,5,'#' PLUS DB 1 MINS DB 1 DATA ENDS

STACK SEGMENT STACK

DB 200 DUP(0) STACK ENDS CODE SEGMENT

ASSUME DS: DATA,SS: STACK,CS: CODE START: MOV AX, DATA MOV DS, AX

MOV PLUS, 0 MOV MINS, 0 MOV DI, 0 BG: CMP DBUF[DI], '#'

JE EN INC DI

CMP DBUF[DI], 0 JG L1 JL L2 L1: INC PLUS JMP BG

精心整理 学习帮手

;7正3负,#为结束标志 ;正数个数 ;负数个数

;初始化

;遇到#结束 ;和0比较 ;大于 ;小于

;正数个数加1 ;继续循环

word完美格式

4CH

六、 编程,测试,记录程序运行结果。

L2: EN: INC JMP MOV INT MINS BG AH, 21H

;负数个数加1

实验8 数据排列实验(冒泡排序)

一、 实验要求

1 利用PROTEUS 平台,编程实现8086 的由小到大的数据排列。 2 利用系统功能调用实现需要排序数据的输入和排序结果显示。 二、 实验目的

1、熟悉实验系统的编程和使用。 2、了解排列的简单算法。 3、了解“冒泡排序”法。 三、 实验说明

有序的数列更有利于查找。本程序用的是“冒泡排序”法,算法是将一个数与后面的数 相比较,如果比后面的数大,则交换,如此将所有数比较一遍后,最大的数就会在数列的最 后面。再进行下一轮比较,找出第二大数据,如此下去,直到全部数据由小到大排列完成。 四、 实验程序流程图

精心整理 学习帮手

word完美格式

五、 参考程序 DATA SEGMENT

ARRAY DB 25,46,3,75,5,30 COUNT EQU $-ARRAY

DATA ENDS

STACK SEGMENT PARA STACK 'STACK'

DB 60 DUP(?)

STACK ENDS CODE SEGMENT

ASSUME CS:CODE,DS:DATA,SS:STACK

START: MOV AX, DATA

MOV DS, AX

MOV DX, COUNT-1 MOV BL, 0FFH

AGAINO: CMP BL, 0

JE DONE

XOR BL, BL MOV CX, DX

MOV SI, COUNT-1

AGAIN1: MOV AL, ARRAY[SI]

CMP AL, ARRAY[SI-1] JAE UNCH

EXCH: XCHG ARRAY[SI-1],AL

MOV ARRAY[SI],AL MOV BL, 0FFH

精心整理 学习帮手