找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 5914|回复: 39
打印 上一主题 下一主题
收起左侧

二进制转16进制转换问题请教

  [复制链接]
跳转到指定楼层
楼主
二进制转16进制转换问题请教,如图   A B C D E F G   DP   

                                                                                     A
                                                             FB
                                                                   G
                                                         E C
                                                                    D          dp
显示一个7
  二进制    A=1    B=1    C=1    D=0   E=0   F=0    G=0    1110  0000
显示一个5
二进制     A=1    B=0     C=1    D=1   E=0   F=1    G=1    1011  0100


  现在如何换算  16进制,有什么技巧  视频看不懂啊??


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:435807 发表于 2018-11-29 15:54 | 只看该作者
共阴逆序
E0H
B6H
每四个换成16进制
回复

使用道具 举报

板凳
ID:370508 发表于 2018-11-29 16:13 | 只看该作者
8421码   或者二进制0b    十六进制用0x  让编译器自己去转换
回复

使用道具 举报

地板
ID:94031 发表于 2018-11-29 16:17 | 只看该作者
显示一个7,要点亮a,b,c 这3段,其余5段不点亮,点亮高电平1,不点亮是低电平0,最高位是a,次高位是b。。。末位是dp,因此是1110  0000,关键是看懂段码图与二进数对应关系。
回复

使用道具 举报

5#
ID:435137 发表于 2018-11-29 17:04 | 只看该作者
yat 发表于 2018-11-29 16:13
8421码   或者二进制0b    十六进制用0x  让编译器自己去转换

转换了 那下次还是不会啊  还要计算器来转换啊。我想自己学会啊
回复

使用道具 举报

6#
ID:435137 发表于 2018-11-29 17:05 | 只看该作者
xuyaqi 发表于 2018-11-29 16:17
显示一个7,要点亮a,b,c 这3段,其余5段不点亮,点亮高电平1,不点亮是低电平0,最高位是a,次高位是b。 ...

拿如何转换16进制  进行编程?
回复

使用道具 举报

7#
ID:303383 发表于 2018-11-29 17:44 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

8#
ID:436218 发表于 2018-11-30 00:18 | 只看该作者
#include <at89x51.h>
#define uchar unsigned char
uchar display[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
void yan10ms();
void main()
{
   uchar i,n;
   for(i=24;i>0;i--)
   {
       for(n=50;n>0;n--)
           {
                   if(i/10==0)
                {P0=0xff;}
                   else
                {P2_1=0;P2_0=1;P0=display[i/10];}
                yan10ms();
           P2_0=0;P2_1=1;P0=display[i%10];yan10ms();
           }
           P3_0=0;yan10ms();P3_0=1;
   }
    P2_0=0;P2_1=1;P0=display[0];P3_0=0;        while(1);
}
void yan10ms()   //10ms
{
  uchar i,j;
    for(j=20;j>0;j--)
          {for(i=250;i>0;i--);}
}
回复

使用道具 举报

9#
ID:308997 发表于 2018-11-30 09:19 | 只看该作者
8421码,4位二进制数分为一组。从左到右每位二进制的权值为8,4,2,1. 将每位码上的权值相加就行了,例如:1111转换成十六进制就将各位上的权值8+4+2+1=15,而15在十六进制中就是F。1110转十六进制8+4+2=14,14在十六进制中就是E。
回复

使用道具 举报

10#
ID:406172 发表于 2018-12-1 09:43 | 只看该作者
用8421码
回复

使用道具 举报

11#
ID:345562 发表于 2018-12-1 14:32 | 只看该作者
Q 我也刚学;不知对否:
先说7=1110 0000转16进制:
1*8+1*4+1*2+0*1=15=E
0*8+0*4+0*2+0*1=0=0
合并=E0
在说5=1011 0100转16进制:
1*8+0*4+1*2+1*1=11=B
0*8+1*4+0*2+0*1=4=4
合并=B4
回复

使用道具 举报

12#
ID:302205 发表于 2018-12-1 21:32 | 只看该作者
一般记住8421这是技巧
回复

使用道具 举报

13#
ID:437473 发表于 2018-12-2 01:54 | 只看该作者
利用8421,每四位二进制数换成一个十六进制数。比如1011 0100,高四位=8+2+1=11=b,低四位0100=4,合在一起就是b4
回复

使用道具 举报

14#
ID:357520 发表于 2018-12-2 16:32 | 只看该作者
用电脑里的计算器最方便了,当然还是要知道如何自己计算,四位一分,从高位到低位分别是2的3次方,2的2次方,2的1次方,2的0次方,再乘以对应位的1或0,最后将各位算出来数加起来就是16位中0-f的数
回复

使用道具 举报

15#
ID:421499 发表于 2018-12-3 17:27 | 只看该作者
用科学计算器转换一下就好了
回复

使用道具 举报

16#
ID:438888 发表于 2018-12-4 00:45 | 只看该作者
前四位换算成yiwe
回复

使用道具 举报

17#
ID:438888 发表于 2018-12-4 00:47 | 只看该作者
二进制换算成16进制可以四位四位的看,比如7,低四位是0000换算为16进制就是0,高四位是1110换算成16禁止就是E。
回复

使用道具 举报

18#
ID:80847 发表于 2018-12-4 09:17 | 只看该作者
用电脑里的计算器最方便
回复

使用道具 举报

19#
ID:429064 发表于 2018-12-4 10:03 | 只看该作者
4位一组 8421码
回复

使用道具 举报

20#
ID:439045 发表于 2018-12-4 11:01 | 只看该作者
科学计算器
回复

使用道具 举报

21#
ID:439074 发表于 2018-12-4 11:17 | 只看该作者
先将二进制数四个bit 分组,然后每一组计算出数据 变成对应的16进制数。
就可以了
回复

使用道具 举报

22#
ID:439105 发表于 2018-12-4 11:42 | 只看该作者
8 4 21 ,四位一起看,很简单的,加油
回复

使用道具 举报

23#
ID:439163 发表于 2018-12-4 13:30 | 只看该作者
四位一组转换,转换成十进制,小于10不变,10-15分别换为ABCDEF
回复

使用道具 举报

24#
ID:439212 发表于 2018-12-4 14:51 | 只看该作者
二进制数从右往数,每四位为六进制一位,比如1110 0000,从右数起,前四位都为零,则十六进制第一位为零,继续往右数四位1110,2的三次方加上2的二次方加上2的一次方再加上2的零次方等于14,十六进制表示为E,则十六进制第二位为E,所以二进制1110 0000转换成十六进制为E0H,希望对你有帮助~
回复

使用道具 举报

25#
ID:415069 发表于 2018-12-4 15:41 | 只看该作者
计算器换算
回复

使用道具 举报

26#
ID:439445 发表于 2018-12-4 19:35 | 只看该作者
二进制8位,没有8位前面用0填充。用一个16进制数表示4位。如:1110 0000  按照8421 前四位就是8+4+2=14,后四位就是0。16进制就是0xE0
回复

使用道具 举报

27#
ID:439490 发表于 2018-12-4 20:02 | 只看该作者
背会8421BCD码就行
回复

使用道具 举报

28#
ID:439279 发表于 2018-12-5 08:55 | 只看该作者
高四位对应一个16进制 第四位对应一个16进制
回复

使用道具 举报

29#
ID:439945 发表于 2018-12-5 12:51 | 只看该作者
8421码  每四个换成16进制
回复

使用道具 举报

30#
ID:440002 发表于 2018-12-5 13:55 | 只看该作者
转化成十进制之后,再去转化成十六进制
回复

使用道具 举报

31#
ID:440374 发表于 2018-12-5 20:36 | 只看该作者
我以前刚学时就是用8421,四位一组转换
回复

使用道具 举报

32#
ID:440414 发表于 2018-12-5 21:00 | 只看该作者
共阴逆序
E0H
B6H
每四个换成16进制
回复

使用道具 举报

33#
ID:440424 发表于 2018-12-5 21:07 | 只看该作者
共阴逆序 E0H B6H 每四个换成16进制
回复

使用道具 举报

34#
ID:440441 发表于 2018-12-5 21:30 | 只看该作者
与二进制转八进制方法近似,八进制是取三合一,十六进制是取四合一。(注意事项,4位二进制转成十六进制是从右到左开始转换,不足时补0)
回复

使用道具 举报

35#
ID:307566 发表于 2018-12-5 21:32 | 只看该作者
应用8421码来进行转换这些会很简单
回复

使用道具 举报

36#
ID:13074 发表于 2018-12-5 21:35 | 只看该作者
8421码学习了
回复

使用道具 举报

37#
ID:441309 发表于 2018-12-6 23:11 | 只看该作者
4位二进制组成数16进制数,例如1110 = 0 x 2^0 + 1 x 2^1 + 1 x 2^2 + 1 x 2^3 = 14 = d
回复

使用道具 举报

38#
ID:433370 发表于 2018-12-7 20:49 | 只看该作者
8421与2进制四位一一对应例子:1101 0011
                                               8421 8421
                    转换16进制:8+4+1=13  16进制为D
                                        2+1=3
16进制为0xD3
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表