资源描述:
《十六进制转十进制(汇编masn).doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、;十六-十进制转换;程序设计的要求:通过键盘给一个四位的16进制数,程序把它转换成10进制数,并显示出来。;;把输入的4位16进制数以10十进制的值存放到变量num中,注意num可能会有5位数。所以下面;就通过÷,%(10000,1000,100,10)来得到每一位数,即十进制数.CSEGSEGMENTassumecs:CSEG,ds:DSEG,ss:SSEGMAINPROCFAR;主程序入口movnum,0movcx,4;输入4位16进制数(这里没有处理少于或多于4位的情况)L1:movah,01hint21hpus
2、hcxmovcl,4shlnum,cl;输入的数以10进制的形式存到num中popcxcmpal,3ahjbs1subal,07hs1:subal,30hmovah,0addnum,axmovbx,numloopL1;******************************************************************************;输入空格以结束。movah,01hint21hmovah,02hmovdl,'('int21hmovdl,'1'int21hmovdl,'6'int
3、21hmovdl,')'int21hmovdl,''int21h0;******************************************************************************;callfun;调用主函数;******************************************************************************;movah,02hmovdl,'('int21hmovdl,'1'int21hmovdl,'0'int21hmo
4、vdl,')'int21hcallchange;******************************************************************************;callexit;退出;******************************************************************************;MAINENDPfunprocmovcx,10000d;把除数存放到cx中calldec_divmovcx,1000dcalldec_d
5、ivmovcx,100dcalldec_divmovcx,10dcalldec_divmovcx,1dcalldec_divretfunendpdec_divproc;除法实现,除数为cx的值movax,bxmovdx,0divcxmovbx,dxmovdl,aladddl,30hmovah,02hint21hretdec_divendp;*******************************************************************************************
6、******;下面代码仅供测试使用printbprocpushaxmovdl,almovah,02hint21hpopaxretprintbendpprintwprocpushaxpushbxpushcxMOVcx,4a7:movdi,bxPUSHcxMOVcl,4ROLdi,clmovbx,diMOVdl,blANDdl,0fhADDdl,30hCMPdl,3ahJBa8ADDdl,7a8:MOVah,2INT21hPOPcxLOOPa7popcxpopbxpopaxretprintwendp;***********
7、**************************************************************************************;*************************************************************************************************;回车换行changeprocpushaxmovah,02hmovdl,0ahint21hmovah,02hmovdl,0dhint21hpopaxretc
8、hangeendp;*************************************************************************************************;**********************************************************