资源描述:
《2进制到16进制转换》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、结束开始BX循环左移一个数位显示一个字符加上7把最右面的数位转换为ASCII是ASCIIA~F?循环记数值=0?2进制到16进制转换prognamsegmentmainprocfarassumecs:prognamstar:pushdssubax,axpushax;mainpartofprogrammovch,4rotate:movcl,4Nrolbx,clmoval,blandal,0fhaddal,30hcmpal,3ahjlprintitaddal,7hprintit:movdl,almovah,2int21hdecchjnzrotateNretmai
2、nendpYprognamendsNend大小写转化开始输入字符加20H显示是ASCIIa~z?assumecs:codedatasegmentdb"begin",0datsegmentpara'dat'dat1db10,?,10dup(?)datendsstacsegmentparastack'stac'stac1db100dup(?)stacendscodesegmentpara'code'assumecs:code,ds:dat,es:dat,ss:stacstarprocfarpushdsxorax,axpushaxmovax,datmovds,ax
3、moves,axg3:callxsyleabx,[dat1+1]xorcx,cxmovcl,byteptr[bx]addbx,cxmovbyteptr[bx+1],'$'leadi,dat1callxsleadi,dat1callxzdcallxsjmpg3retstarendpxzdprocmovcl,[di+1]movch,00adddi,2lp2:moval,[di]cmpal,'a'jbg2cmpal,'z'jag2subbyteptr[di],20hg2:incdilooplp2retxzdendpxsyprocleadx,dat1movah,0a
4、hint21hretxsyendpxsprocmovdl,0dhmovah,2int21hmovdl,0ahmovah,2int21hleadx,dat1adddx,2movah,9int21hretxsendpcodeendsendstar前导后续字母开始输入字符加1,加0,减1显示是ASCIIa~z?datasegmentadb"",0dh,0ah,"$";cdb"下一个字符",0dh,0ah,"$"dataendscsegsegmentassumecs:cseg,ds:datastart:movax,datamovds,axmovdx,offsetam
5、ovah,9hint21hmovah,1int21hmovdl,aldecdlmovcx,3L1:movah,2int21hincdlloopL1exit:movah,4chint21hcsegendsendstart