十六进制转换成二进制(汇编)
用汇编实现
这是我曾经写的一个程序,这段代码的作用是循环4次输入4位16进制数,我把它转换位2进制数,方法就是对于每一位数(现在是ASCII码)转化为0——9或a——f的数,然后左移4位,放到一个变量里面,循环就行了,也就是16进制转换为2进制的基本算法,左移4位,不断的进行。
。 XOR BX,BX ;BX里面放输入后经转换的2进制数 MOV CL,04 ;转换的时候移位次数 MOV AH,01 MOV DI,4 ;循环4次输入 LP1: SHL BX,CL ;由于最高位也只移3个4位,所以就放在前面。
INT 21H SUB AL,30H ;输入的1位数与0的ascii比较 CMP AL,9 JBE DEAL1 ;不小于9的为A,B,C等值 SUB AL,7 ;根据位置关系再减7 DEAL1: ADD BL,AL ;转换后的数存入BL DEC DI CMP DI,0 JNZ LP1 。
答:QBasic简单一点详情>>