当前位置:文档之家› 微机原理实验报告清零程序

微机原理实验报告清零程序

竭诚为您提供优质文档/双击可除微机原理实验报告清零程序
篇一:微机原理实验报告
微机原理与应用课程实验报告
实验分工:
报告人
同组人
实验时间:20XX.12.10
课程设计
一、题目要求
(1)在数据段首址为0100h开始的内存区1按从大到小的顺序顺次存入二进制数15~0共16个字节的数据;
(2)将上述源区内容传送到目的内存区2(首址为1100h)中;
(3)检验上述传送过程是否正确,如有错误,在紧跟内存区2后的第一个字节
开始写入AscII码“eRRoR”,否则写入“oK”。

(4)用冒泡法将上述内存区2的数据,按从小到大的次序重新排列,排列后存放在内存区3(开始地址为2100h)。

(5)将上述内存区2和内存区3的第100个数据分别乘以2,并转为bcD码,保存在各自存储区的末尾。

再将上述两个bcD码相乘,其结果保存在内存区1的末尾处。

二、实验程序框图
三、程序代码
codesegment
assumecs:code
DATA1db16dup(?)
DATA2dbeRRoR
DATA3dboK
;在数据段首址为0100h开始的内存区1按从大到小的顺序顺次存入二进制数15~0共16个字节的数据start:
movax,0100h;规定目标程序存放单元的偏移量
movds,ax;数据段地址
moves,ax
movsi,offsetDATA1;偏移地址
movcx,0010h;循环次数
movbx,0100h
moval,ofh
s1:
movcs:[si],al
mov[bx],cs:[si]
incsi
incbx
decal
loops1
nop
;将内存区1数据搬移到内存区2中
movcx,16
movsi,0100h
movbx,1100h
s2:
moval,[si]
mov[bx],al
incbx
loops2
nop
;对比内存区1的数据与内存区2的数据是否相同mov cx,16
movsi,0100h
movbx,1100h
comp:
movax,[si]
movdx,[bx]
cmpax,dx
jneerro
incsi
incbx
loopcomp
;数据如果都相同,说明上述传输过程正确movsi,offsetDATA3
movdi,1110h
movbl,0
movcx,2
enteroK:
movbl,cs:[si]
mov[di],bl
incsi
incdi
loopenteroK
nop
jmps3
;如果有一个数据不相同,说明上述传输过程不正确err:
movsi,offsetDATA2
movdi,1110h
movbl,0
movcx,5
entereRR:
movbl,cs:[si]
mov[di],bl
incdi
loopentereRR
;将内存区2数据搬移到内存区3中
s3:
movsi,1100h
movcx,0010h
movbx,2100h
moval,0
movcx,16
fil:
moval,[si]
mov[bx],al
incsi
incbx
loopfil
nop
;用冒泡法将内存区3的数据按从小到大重新排列s4: movbl,0
movcx,16
movsi,2110h
decsi
deccx
again:
moval,[si]
cmpal,[si-1]
jaenext
xchgal,[si-1]
mov[si],al
movbl,1
next:
decsi
loopagain
cmpbl,0
jnestart1
nop
movsi,1109h
moval,[si]
movcl,2
mulcl;结果在al中
movdx,0
movbx,10
divbx
shlal,4
addal,dl;把二进制数转换成bcD码mov[1112h],al
movsi,2109h
moval,[si]
movcl,2
mulcl;结果在al中
movdx,0
movbx,10
divbx
shlal,4
addal,dl;把二进制数转换成bcD码mov[2110h],al
;两个bcD码相乘,其结果保存在内存区1的末尾处。

movsi,1112h
movah,[si]
movcl,4
shrah,cl
moval,ah
movdl,10
muldl;结果在al中
movdl,[si]
篇二:微机原理实验报告
华北电力大学
科技学院
课程名称:微机原理实验学生姓名:牛玺童班级:电气学号:实验报告11k6111904010415
实验一数据转换实验
一、实验目的
(1)初步掌握在pc机上建立、汇编、链接和运行8086/88汇编语言程序的过程。

(2)通过对两个验证性试验的阅读、调试、掌握不同进制数及编码相互转换的程序设计方法。

(3)完成程序设计题,加深对数码转换的理解,了解简单程序设计方法。

二、实验内容
1.十六进制数转换为AscII码
设二字节十六进制数存放于其实地址为3500h的内存单元中,把他们转换成AscII码后,再分别存入起始地址为350A。

相关主题