微机原理实验报告软件实验1-4

  • 格式:doc
  • 大小:462.37 KB
  • 文档页数:8

微机原理实验报告

学院:算机科学与软件教育学院

班级: 姓名: 学号:

实验课程名 微机原理实验 成绩

实验项目名称 实验一、 存储器块清零 指导老师

一、实验目的

1. 掌握存储器读写方法

2. 了解存储器的块操作方法

二、实验原理

存储器读写和块操作

三、实验设备仪器及材料

计算机,WAVE 6000软件

四、实验过程

S1.asm

代码流程图

data segment

Block db 256 dup(55h)

data ends

code segment

assume cs:code, ds:data

start proc near

mov ax, data

mov ds, ax

mov bx, offset Block ; 起始地址

mov cx, 256 ; 清 256 字节

Again:

mov [bx], byte ptr 0

inc bx ; 地址+1

Loop Again ; 记数减一

jmp $ ;死循环

code ends

end start

设置块长度 设置块起始地址

地址加1 当前地址内容清零

是否清除完

结束 是 否 五、实验步骤

(1) 进入Wave6000,输入程序并检查,保存程序。

(2) “编译”程序。

(3) “全速执行”程序。

(4) “暂停”程序运行,在“数据窗口(MEMOREY)”查看0400H起始的单元内容,并记录。

(5) 在指令“jmp $”处设断点。“全速执行”程序。

(6) 在“数据窗口(MEMOREY)”查看0400H起始的单元内容,记录并分析实验结果。

六、实验结果及总结

1、在“数据窗口(MEMOREY)”查看0400H起始的单元内容

运行前: 运行后:

2、调试:如何将存储器块的内容置成某固定值(例全填充为0FFH)?

总结:通过本实验,我了解到单片机读写存储器的读写方法,同时也了解到单片机编程,调试方法。学会内存的移动方法,也加深对存储器读写的认识。 微机原理实验报告

学院:算机科学与软件教育学院

班级:计机 姓名: 学号:

实验课程名 微机原理实验 成绩

实验项目名称 实验二、 二进制到BCD码转换 指导老师

一、实验目的

1. 了解BCD值和ASCII值的区别。

2. 了解如何将BCD值转换成ASCII值。

3. 了解如何查表进行数值转换及快速计算。

二、实验原理

ASCII码表

三、实验设备仪器及材料

计算机,WAVE 6000软件

四、实验过程

data segment

Result db 3 dup(?)

data ends

code segment

assume cs:code, ds:data

start proc near

mov ax, data

mov ds, ax

mov ax, 123

mov cl, 100

div cl

mov Result, al ; 除以 100,

得百位数

mov al, ah

mov ah, 0

mov cl, 10

div cl

mov Result+1, al ; 余数除以

10, 得十位数

mov Result+2, ah ; 余数为个位数

jmp $

code ends

end start

代码流程图

五、实验步骤

1. 进入Wave6000,输入程序,并检查,保存程序。

2.“编译”程序。

3. 在指令“jmp $”处设断点。

4. “全速执行”程序。

5. 在“数据窗口(MEMOREY)”查看:

a) 0400H、0401H、0402H三个单元的内容,记录并分析实验结果。

b) 分别查看0400H、0500H开始256个单元的内容,记录并分析实验结果。

六、实验结果及总结

在“数据窗口(MEMOREY)”查看:

a) 0400H、0401H、0402H三个单元的内容

运行前 运行后

b) 分别查看0400H、0500H开始256个单元的内容

运行前 运行后

微机原理实验报告

学院:算机科学与软件教育学院

班级: 姓名: 学号:

实验课程名 微机原理实验 成绩

实验项目名称 实验三、 二进制到ASCII码转换 指导老师 古鹏

一、实验目的

1. 掌握如何将进制数转换成ASCll码

2. 掌握如何查表进行数值转换

3. 了解如何查表进行数值转换及快速计算。

二、实验原理

ASCII码表

三、实验设备仪器及材料

计算机,WAVE 6000软件

四、实验过程

data segment

Result db 2 dup(?)

ASCIITab:

db "0123456789ABCDEF" ; 定义数字对应的ASCII表

data ends

code segment

assume cs:code, ds:data

start proc near

mov ax, data

mov ds, ax

mov ax, 1ah

mov bl, al

shr bl, 4

mov bh, 0

mov ah, byte ptr ASCIITab[bx]

mov Result, ah

and al, 0fh

mov bl,al

mov ah, byte ptr ASCIITab[bx]

mov Result+1,ah

jmp $

code ends

end start

程序流程图

五、实验步骤

(1) 进入Wave6000,输入程序并检查,保存程序。

(2) “全部编译”程序。

(3)“全速执行”程序。

(4) 在“数据窗口(MEMOREY)”查看0400H、0401H两个单元的内容,记录并分析实验结果。

六、实验结果及总结

在“数据窗口(MEMOREY)”查看0400H、0401H两个单元的内容

运行前 运行后

微机原理实验报告

学院:算机科学与软件教育学院

班级: 姓名: 学号:

实验课程名 微机原理实验 成绩

实验项目名称 实验四、 内存块移动 指导老师 古鹏

一、实验目的

1. 了解内存的移动方法

2. 加深对存储器读写的认识

二、实验原理

存储器读写

三、实验设备仪器及材料

计算机,WAVE 6000软件

四、实验过程

data segment

Source db 256 dup(055h)

Target db 256 dup(0aah)

data ends

code segment

assume cs:code, ds:data, es:data

start proc near

mov ax, data

mov ds, ax

mov es, ax

mov si, offset Source

mov di, offset Target

mov cx, 256

rep movsb

jmp $

code ends

end start

程序流程图

五、实验步骤

(1) 进入Wave6000,输入程序并检查,保存程序。

(2) “全部编译”程序。

(4)“全速执行”程序。

(5) 在“数据窗口(MEMOREY)”运行前查看0400H到04F0H内容,运行后查看0500H到05F0H的内容,两个状态相比较,记录并分析实验结果。

六、实验结果及总结

在“数据窗口(MEMOREY)”运行前查看0400H到04F0H内容,运行后查看0500H到05F0H的内容

运行前 运行后