概述
微机原理实验答案
1、已知有20个8位二进制数,存放在以1000H开始的存储区域内。试编写一个完整的汇编语言程序,统计其中的正数、负数、零的个数并存在1014H开始的存储区内。
STACK SEGMENT STACK
DB 64 DUP(?)
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE
START: MOV SI,1000H
MOV DI,1014H
MOV CX,0014H
MOV BYTE PTR[DI],0
MOV BYTE PTR[DI+1],0
MOV BYTE PTR[DI+2],0
AA1:MOV AL,[SI]
CMP AL,0
JG AA2
CMP AL,0
JL AA3
INC BYTE PTR[DI+2]
INC SI
LOOP AA1
AA2: INC BYTE PTR[DI]
INC SI
LOOP AA1
AA3:INC BYTE PTR[DI+1]
INC SI
LOOP AA1
INT 03H
CODE ENDS
END START
2、在1000H开始的单元中存放着一个字(16位),将字中1的个数存入1002H单元中。
算法:要测出1的个数就应该逐位比较,可根据最高有效位是否为1来计数,然后用移位的方法把各位数逐次移到最高位去。
可以用测试字是否为0来作为结束条件,这样可缩短程序的执行时间
最后
以上就是时尚小刺猬为你收集整理的微型计算机原理实验程序,微机原理 实验程序的全部内容,希望文章能够帮你解决微型计算机原理实验程序,微机原理 实验程序所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复