资源描述:
《微型计算机原理与接口技术》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、程序编写:赵云峰整理:B08232班黄之皓4.9练习题北华航天工业学院程序编写:赵云峰整理:B08232班黄之皓10、写一个宏定义,要求能把任意一个寄存器的最低位移至另一个存储器的最高位中。北华航天工业学院程序编写:赵云峰整理:B08232班黄之皓DATASEGMENTVAR1DB4,6VAR2DD200DUP(?)DATAENDSSTACKSSEGMENTSTACKSENDSCODESSEGMENTASSUMECS:CODES,DS:DATA,SS:STACKSSTART:MOVAX,DATA
2、MOVDS,AXXTYMACROX,YMOVAX,XANDAX,1RORAX,1MOVY,AXENDMMOVDX,1MOVAX,0XTYDX,AX,MOVAH,4CHINT21HCODESENDSENDSTART北华航天工业学院程序编写:赵云峰整理:B08232班黄之皓11、利用DOS功能调用从键盘输入60个字符到缓冲区BUF中,在按下ENTER键后在屏幕上显示这些字符。请写出程序段。北华航天工业学院程序编写:赵云峰整理:B08232班黄之皓DATASEGMENTST1DB'Pleaseinpu
3、t60charactersfromkeyboard.',0DH,0AH,'$'BUFDB61DUP(?)DATAENDSCODSEGMENTASSUMECS:COD,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVDL,07HMOVAH,2INT21HMOVDX,OFFSETST1MOVAH,9INT21HLEASI,BUFMOVCX,60LP:MOVAH,7INT21HMOV[SI],ALCMPAL,0DHJZEXITINCSILOOPLPEXIT:MOVBX,60SUBB
4、X,CXMOVCX,BXLEASI,BUFLP2:MOVDL,[SI]MOVAH,6INT21HINCSILOOPLP2MOVAH,4CHINT21HCODENDSENDSTART北华航天工业学院程序编写:赵云峰整理:B08232班黄之皓北华航天工业学院程序编写:赵云峰整理:B08232班黄之皓12、试写一段程序,要求先给出一声铃响提示,屏幕上显示:“Pleaseinputaalphabet:”,然后从键盘输入一个字母送BL。北华航天工业学院程序编写:赵云峰整理:B08232班黄之皓DATASS
5、EGMENTST1DB'PleaseInputaalphabet:',0DH,0AH,'$'ST2DB?DATASENDSCODESSEGMENTASSUMECS:CODES,DS:DATASSTART:MOVAX,DATASMOVDS,AXMOVDL,7MOVAH,2INT21HMOVDX,OFFSETST1MOVAH,9INT21HMOVAH,1INT21HMOVBL,ALMOVAH,4CHINT21HCODESENDSENDSTART北华航天工业学院程序编写:赵云峰整理:B08232班黄之
6、皓北华航天工业学院程序编写:赵云峰整理:B08232班黄之皓第五章汇编语言程序设计例5-1:试用8086CPU的指令实现Y=(X1+X2)/2的程序设计。北华航天工业学院程序编写:赵云峰整理:B08232班黄之皓DATASSEGMENTX1DB34HX2DB89HYDW?DATASENDSSTACKSSEGMENTSTACKSENDSCODESSEGMENTASSUMECS:CODES,DS:DATAS,SS:STACKSSTART:MOVAX,DATASMOVDS,AXMOVAX,0MOVAL
7、,X1MOVBL,X2ADDAL,BLADCAH,0SARAX,1MOV[Y],AXMOVAH,4CHINT21HCODESENDSENDSTART北华航天工业学院程序编写:赵云峰整理:B08232班黄之皓北华航天工业学院程序编写:赵云峰整理:B08232班黄之皓例5-1(老书):编制实现两个三十二位数相乘的程序。北华航天工业学院程序编写:赵云峰整理:B08232班黄之皓DATASEGMENTMULNUMDW1234HDW0B8FDHDW0DFE6HDW78FFHDW4DUP(?)DATAEND
8、SCODSEGMENTASSUMECS:COD,DS:DATA北华航天工业学院程序编写:赵云峰整理:B08232班黄之皓START:MOVAX,DATAMOVDS,AXXORAX,AXLEABX,MULNUMMUL32:MOVAX,[BX]MOVSI,[BX+4]MOVDI,[BX+6]MULSI;B*dMOV[BX+8],AXMOV[BX+0AH],DXMULDI;B*CADDAX,[BX+0AH]ADCDX,0MOV[BX+0AH],AXMOV[BX+0CH],DXXORAX,AXXORDX