1、首先左移要转换的二进制码1位; 左移之后,BCD码分别置于百位、十位、个位; 如果移位后所在的BCD码列大于或等于5,则对该值加3;继续左移的过程直至全部移位完成,并检查每一列对应的bcd码是否
2、接着看信号列表。
3、然后二进制代码设计。
4、十进制代码。
5、十六进制,最后就完成了。
注意事项:
BCD码这种编码形式利用了四个位元来储存一个十进制的数码,使二进制和十进制之间的转换得以快捷的进行。这种编码技巧最常用于会计系统的设计里,因为会计制度经常需要对很长的数字串作准确的计算。
//十进制转换为二、八、十六进制 -- 递归算法
#include<stdioh>
void showbit(int n) //十进制转换为二进制
{
if(n>1){
showbit(n/2);
}
printf("%d",n%2);
}
void showoct(int n) //十进制转换为八进制
{
if(n>7){
showoct(n/8);
printf(" ");
}
printf("%d",n%8);
}
void showhex(int n) //十进制转换为十六进制
{
if(n>15){
showhex(n/16);
}
if(n%16>=10) //当余数大于10时以字母形式输出
{
switch(n%16)
{
case 10:printf("A");break;
case 11:printf("B");break;
case 12:printf("C");break;
case 13:printf("D");break;
case 14:printf("E");break;
case 15:printf("F");break;
}
}
else
printf("%d",n%16);
}
int main()
{
int a;
printf("input a num:");
scanf("%d",&a);
showbit(a);
printf("\n");
showoct(a);
printf("\n");
showhex(a);
printf("\n");
}
将楼上代码完善了一下!
这个可以借鉴联想一键恢复的做法。如果是系统启动,那就使用bcdboot设置,bcdboot c:\windows /l zh-cn
如果是固件程序启动项,是这么设置的,首先将\Device\HarddiskVolume2这个分区格式为FAT32分区,复制文件到这个分区,然后设置启动项,在diskpart中选中分区,设置id,就是set id={b90564f0-2cad-11e3-be71-3c970ef4a229},这样efi就可以寻找到这个标识符启动这个分区。
以上就是关于怎么将16位二进制数转换成BCD码的汇编语言程序全部的内容,包括:怎么将16位二进制数转换成BCD码的汇编语言程序、c语言bcd进制转码程序问题、如何在BCD文件中创建“固件应用程序(101fffff)”对象等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)