ImageVerifierCode 换一换
格式:DOCX , 页数:19 ,大小:18.02KB ,
资源ID:26562197      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/26562197.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(微型计算机原理实验.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

微型计算机原理实验.docx

1、微型计算机原理实验实验一:输出字符 A的源程序如下:PROG SEGMENTASSUME CS:PROGSTART: MOV DL,AMOV AH , 2INT 21HMOV AH , 4CHINT 21HPROG ENDSEND START实验二:1.把 BX 中的二进制数转换成十进制数,在屏幕上显示出来,只考虑无符号数。程序如下:CODE SEGMENTASSUMECS:CODESTART: MOVBX,0FFFHMOVCX,10000CALLDEC_DIVMOVCX, 1000CALLDEC_DIVMOVCX,100CALLDEC_DIVMOVCX,10CALLDEC_DIVMOVCX,

2、1CALLDEC_DIVMOVAH,4CHINT21HDEC_DIV PROCNEARMOVAX,BXMOVDX,0DIVCXMOVBX,DXMOVDL,ALADDDL,30HMOVAH,2INT21HRETDEC_DIV ENDPCODE ENDSENDSTART2.把 BX中的带符号数转换成十进制数,在屏幕上显示出来。程序如下:CODE SEGMENT ASSUME CS:CODESTART: MOVBX,8001HMOVAX,8000HANDAX,BXJNZMINUSJMPDISPMINUS: MOVDL,-MOVAH,2INT21HNEGBXJMPDISPDISP: MOVCX,100

3、00CALLDEC_DIVMOVCX, 1000CALLDEC_DIVMOVCX,100CALLDEC_DIVMOVCX,10CALLDEC_DIVMOVCX,1CALLDEC_DIVMOVAH,4CHINT21HDEC_DIV PROCNEARMOVAX,BXMOVDX,0DIVCXMOVBX,DXMOVDL,ALADDDL,30HMOVAH,2INT21HRETDEC_DIV ENDPCODE ENDSENDSTART3.求一个数据块(由 10 个单字节的无符号数组成)中的最大元素,并将结果在屏幕上显示出来,程序如下:DATA SEGMENTBLOCK DB1,0,5,7,10,30,10

4、0,127,90,80RESULT DB?DATA ENDSCODE SEGMENTASSUMECS:CODE,DS:DATABEGIN PROCFARMOVAX,DATAMOVDS,AXMOVCX,9LEASI,BLOCKMOVAL,SIX1: INCSICMPAL,SIJAEX2MOVAL,SIX2: LOOPX1MOVRESULT,ALMOVAH ,0MOVBX,AXCALLXIANSHIMOVAH,4CHINT21HBEGIN ENDPXIANSHI PROCNEARMOVAL,80HANDAL,BLJNZMINUSJMPDISPMINUS: MOVDL,-MOVAH,2INT21HN

5、EGBLJMPDISPDISP: MOVCX,100CALLDEC_DIVMOVCX,10CALLDEC_DIVMOVCX,1CALLDEC_DIVMOVAH,4CHINT21HXIANSHI ENDPDEC_DIV PROCNEARMOVAX,BXMOVDL,0DIVMOVMOVMOVADDMOVINTCLBL,AHBH,0DL,ALDL,30HAH,221HRETDEC_DIV ENDPCODE ENDSEND BEGIN4.求一个数据块(由 20 个单字节的带符号数组成)中的正数和(字)和负数和(字),并在屏幕上用十进制的形式显示出两个和。程序如下:DATA SEGMENTBLOCK D

6、W -100,100,200,-200,5,6,7,8,9,10DW 11,12,13,14,15,50,-50,150,-150,-200POSIT DW ?NEGAT DW ?ST1 DB The sum of all the positive numbers:$ST2 DB The sum of the negative numbers:$MOV AX,DATAMOV DS,AXMOV BX,OFFSET BLOCKMOV SI,0MOV DI,0MOV CX,20X1: MOV AX,BXCMP AX,0JGE X3ADD DI,AXJMP X2X3: ADD SI,AXX2: ADD

7、 BX,2LOOP X1MOV POSIT,SIMOV NEGAT,DIMOVMOVMOVBX,SIDX,OFFSET ST1AH,9INT21HCALLXIANSHIMOVDL,0DHMOVAH,2INT21HMOVDL,0AHMOVAH,2INT21HMOVBX,NEGATNEGBXANDBX,7FFFHMOVDX,OFFSET ST2MOVAH,9INT21HMOVDL,-MOVAH,2INT21HCALLXIANSHIMOVAH,4CHINT21HSTART ENDPXIANSHI PROCNEARMOVCX,100CALLDEC_DIVMOVCX,10CALLDEC_DIVMOVCX

8、,1CALLDEC_DIVRETXIANSHI ENDPDEC_DIV PROCNEARMOVAX,BXMOVDX,0DIVCXMOVBX,DXMOVDL,ALADDDL,30HMOVAH,2INT21HRETDEC_DIV ENDPCODE ENDSEND START5.将寄存器 BX中的二进制数转换成十六进制数并在屏幕上显示出来。程序如下:CODE SEGMENTASSUMECS:CODEBINHEX PROCFARMOVCH,4MOVBX,1000ROTATE: MOVCL,4ROLBX,CLMOVDL,BLANDDL,0FHADDDL,30HCMPDL,3AHJLOUTPUTADDDL

9、,7OUTPUT: MOVAH,2INT21HDECCHJNEROTATEMOVDL,HMOVAH,2INT21HMOVAH,4CHINT21HBINHEX ENDPCODE ENDSENDBINHEX实验三:1.从键盘上输入一个十进制数( 065535),转换成二进制数并放入寄存器BX中,其程序框图如下:程序如下:CODE SEGMENTASSUME CS:CODESTART PROCCALL DECBINCALL XIANSHIMOV AH,4CHINT 21HSTART ENDPDECBIN PROCNEARMOVCX,10MOVBX,0LOP1: MOVAH,1INT21HCMPAL,

10、30HJLEXITCMPAL,39HJGEXITSUBAL,30HMOVAH,00HXCHGAX,BXMULCXADDBX,AXJMPLOP1EXIT: RETDECBIN ENDPXIANSHI PROC NEARLP1: MOV CX,10000CALL DEC_DIVMOV CX,1000CALL DEC_DIVMOV CX,100CALL DEC_DIVMOV CX,10CALL DEC_DIVMOV CX,1CALL DEC_DIVRETXIANSHI ENDPDEC_DIV PROC NEARMOV AX,BXMOV DX,0DIV CXMOV BX,DXMOV DL,ALADD

11、DL,30HMOV AH,2INT 21HRETDEC_DIV ENDPCODE ENDSEND START2.从键盘上输入 0 65535 范围的一个十进制数,在屏幕上显示出相应的十六进制数。程序如下:CODE SEGMENTASSUME CS:CODESTART PROCCALL DECBINMOV CH,4CALL ROTATEMOV AH,4CHINT 21HSTART ENDPDECBIN PROCNEARMOVCX,10MOVBX,0LOP1: MOVAH,1INT21HCMPAL,30HJLEXITCMPAL,39HJGEXITSUBAL,30HMOVAH,00HXCHGAX,B

12、XMULCXADDBX,AXJMPLOP1EXIT: RETDECBIN ENDPROTATE PROCLOP2: MOVCL,4ROLBX,CLMOVDL,BLANDDL,0FHADDDL,30HCMPDL,3AHJLOUTPUTADDDL,7OUTPUT: MOVAH,2INT21HDECCHJNELOP2MOVDL,HMOVAH,2INT21HMOVAH,4CHINT21HROTATE ENDPCODE ENDSENDSTART实验四:1.在内存中存有一字符串,以0 为结尾,程序开始输出 HELLO然后等待从键盘输入一字符,再改字符串中寻找该字符,若找到,输出yes;若找不到,输出 no

13、 ,然后再输入下一字符。程序如下:DATASEGMENTSTR1DBHELLO,0DH,0AH,$STR2DB20H,YES,0DH,0AH,$STR3DB20H,NO,0DH,0AH,$STR4DB1 2 3 0 4 5 A B a=! ?,00HDATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART PROCFARMOVAX,DATAMOVDS,AXMOVDX,OFFSET STR1MOVAH,9INT21HLOOP1: MOVAH,1INT21HMOVBX,OFFSET STR4GON:MOVAH,BXCMPAH,0JZNOINCBXCMPAH,ALJ

14、NZGONMOVDX,OFFSET STR2GO:MOVAH,9INT21HJMPLOOP1NO:MOVDX,OFFSET STR3JMPGOSTART ENDPCODEENDSENDSTART2.实验内容 1 的程序是个无限循环程序,若按ESC键,让程序退出循环,是系统返回 DOS。已知 ESC键的键值是1BH,按照上面要求对实验内容1 的程序进行修改,然后重新汇编、链接和运行。程序如下:DATASEGMENTSTR1DBHELLO,0DH,0AH,$STR2DB20H,YES,0DH,0AH,$STR3DB20H,NO,0DH,0AH,$STR4DB1 2 3 0 4 5 A B a=! ?,00HDATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART PROCFARMOVAX,DATAMOVDS,AXMOVDX,OFFSET STR1MOVAH,9INT21HLOOP1: MOVAH,1INT21HMOVBX,OFFSET STR4GON:MOVAH,BXCMPAH,0JZNOINCBXCMPJNZMOVGO: MOVINTJMPNO: MOVJMPSTART ENDPCODE ENDSENDAH,ALGONDX,OFFSET STR2AH,921HLOOP1DX,OFFSET STR3GOSTART

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1