1、班级: 微机原理与汇编语言实验报告1实验时间: 年 月 日 实验成绩评定:姓名: 学号:实验九 综合性设计实验实验目的:1、二进制和十进制数转换程序的编制和调试。2、8086/8088指令: MUL,IMUL,DIV,IDIV,LEA。3、利用INT 21H 0AH号功能调用从键盘输入字符串。内容及步骤:双字节乘法程序:程序:disp macro messlea dx,messmov ah,9int 21hendmstack segment stackdb 256 dup(0)stack endsdata segmentbuf db 7db ?db 15 dup(?)messa db plea
2、s input number A ! :$messb db 0dh,0ah,pleas input number B ! :$linefd db 0dh,0ah,$bcd dd 1000000000,100000000,10000000dd 1000000,100000,10000,1000dd 100,10,1data endscode segmentassumecs: code,ds:data,ss:stackmain proc farpush dsxor bx,bxpush bxmov ax,data班级: 微机原理与汇编语言实验报告2mov ds,axdisp messacall ge
3、tpush bxdisp messbcall getdisp linefdpop axmul bxmov cx,10lea si,bcdlea di,buflop: call binecloop lopmov byte ptrdi,$disp bufretmain endpget proclea dx,bufmov ah,0ahint 21hlea si,buf+1xor bx,bxmov ah,bhmov cl,sinext: inc siadd bx,bxmov dx,bxadd bx,bxadd bx,bxadd bx,dxmov al,siand al,0fhadd bx,axdec
4、cljne next班级: 微机原理与汇编语言实验报告3retget endpbinec procmov bl,0again: sub ax,word ptrsisbb dx,word ptrsi+2inc bljnc againadd ax,word ptrsiadc dx,word ptrsi+2add bl,2fhmov di,blinc diadd si,4retbinec endpcode endsend main步骤:1、输入,汇编并连接此程序。2、在DOS下运行此程序,根据提示输入二个乘数,检查并记录结果。3、思考:本程序的输入范围是多少?若超过范围,会产生什么现象?试一试!三、根据上题,按下列要求选做一个程序:(要求在实验报告中写出全部代码,并提交纸质实验报告和电子文档,电子文档为实验报告、源代码、obj、exe文件的压缩包)1、带符号数16位乘法。2、无符号数16位除法。3、无符号数16位乘法,输入超过范围时能告警并要求重输。4、从键盘输入两个字符存入A、B单元中,比较它们的大小写,并在屏幕显示:AB或AB。