精华内容
下载资源
问答
  • 将正负的十进制小数转换为十六进制表示,如1.5转换为3fc00000;php实现
  • 十六进制数转换成十进制数时,先用加权求和的方式表示出来,再将十六进制数中的基数“10H”替换成对应的十进制数值“16”,同时也将十六进制数中的A、B、C、D、E、F替换成对应的十进制数值10、11、12、13...

    十六进制数和十进制数类似,以小数点为界,整数部分从低位到高位依次是0次方位、1次方位、.、n次方位;小数部分从高位到低位依次是-1次方位、-2次方位、.、-m次方位.都可用加权求和的方式表示.
    十六进制数转换成十进制数时,先用加权求和的方式表示出来,再将十六进制数中的基数“10H”替换成对应的十进制数值“16”,同时也将十六进制数中的A、B、C、D、E、F替换成对应的十进制数值10、11、12、13、14、15.然后完全用十进制的规则计算出来,所得就是与该十六进制数相等十进制数.
    例:1A6.3B8H 
    =1*10^2+A*10^1+6*10^0+3*10^(-1)+B*10^(-2)+8*10^(-3)
    =1*16^2+10*16^1+6*16^0+3*16^(-1)+11*16^(-2)+8*16^(-3)
    =419.232422

    转载于:https://www.cnblogs.com/xinxundong/p/8025247.html

    展开全文
  • 表示十六进制数字需要16种符号,刚好对应四方语的16个基本字根。二进制数字0、1作为“基础符号”,用来定义基本字根,独立于四方语之外。所以说“十六进制”是四方语的标准进制。16是2的4次幂,所以二进制数字自小数...

    每个四方字对应着唯一的二进制编号,没必要转换成其它进制。这样设计是为了将来过渡到点阵文字。

    但在日常应用中,二进制数字太长,读写麻烦。

    中国古代曾用过十六进制秤,现代计算机编程也常用到十六进制。表示十六进制数字需要16种符号,刚好对应四方语的16个基本字根。

    二进制数字0、1作为“基础符号”,用来定义基本字根,独立于四方语之外。所以说“十六进制”是四方语的标准进制。

    16是2的4次幂,所以二进制数字自小数点向左,每4位一组,可“直读转换”成十六进制整数;自小数点向右,每4位一组,可“直读转换”成十六进制小数。

    二进制圆周率Pi=11.0010 01,每4个数字一组,直读成十六进制为:3.24。

    二进制自然常数e=10.1011 0111 111,每4个数字一组,直读成十六进制为:2.B7E。

    把它们转换成十进制,则需要颇为繁琐的计算:

    小数点左边第1位乘2的0次幂,第2位乘2的1次幂,第3位乘2的2次幂......以此类推;小数点右边第1位乘2的-1次幂,第2位乘2的-2次幂,第3位乘2的-3次幂......以此类推;然后将全部乘积相加。

    计算机内部运算全是用二进制进行,但呈现给人类的每一条数据,在输出之前都要经过类似的进制转化。

    所以使用四方语和十六进制,可统一信息格式、大幅减轻系统运算量。

    目前通用阿拉伯数字0-9加英文字母ABCDEF表示十六进制数字,其中0-9发音与十进制相同。

    一直以来区分各进制主要靠加后缀(二进制后缀为B,十六进制后缀为H),或凭语言描述。

    网络上暂时还不支持四方语字体,所以在进行文字说明时,会经常用到“英文版十六进制数字”,与二进制数字的对应关系如下:

    0 = 0, 1 = 1, 2 = 10, 3 = 11,

    4 = 100, 5 = 101, 6 = 110, 7 = 111,

    8 = 1000, 9 = 1001, A=1010, B=1011,

    C=1100, D=1101, E=1110, F=1111

    四方语16个基本字根的二进制编号,对应着“麻将田字格”;麻将中的“线段数量”,又对应着十六进制数字0 — F。

    eeb025484b00ab718ef31671d97397c6.png

    基本字根与“十六进制数字”

    熟记每个基本字根对应的“麻将田字格”,二进制与十六进制之间的转化就可以“人工直读”: 可直接将字根码写为二进制编号;太长的二进制数字,可直接用基本字根的发音来读写;十六进制数字也可以用“基本字根”或“点阵”(新版电子表)来表示。

    但“基本字根”同时又对应着16个常用汉字的意象,为避免应用中出现混淆,需另外指定16个四方字,作为“四方语十六进制数字”(简称“四方数”)。

    本人已经为阿拉伯数字0-9指定了字根码,收录为四方字(参见《四方语特殊字符及其二进制编码》)。并原创了6个“四方数”,对应英文版十六进制数字中的A、B、C、D、E、F。

    每个“四方数”的“第3格”,分别对应着16个基本字根。所以在记忆四方语十六进制数字时,可以把它们想象成“基本字根”的形状。

    9以下的十进制与十六进制数字,表示的数量完全相同,不存在本质区别,所以共用同样编号,等于是同一个字。

    但在实际应用中,同一个数字用于十进制和十六进制,写法应当有区别,使两种进制得以区分,便不再需要添加后缀和特别说明。

    所以在用四方语表示“十进制数字”时,用阿拉伯数字写法,可当作是字根码的“草书”。

    用四方语表示“十六进制数字”时,为避免与十进制混淆,必须采用下图接近字根码的写法。可将其称作“四方数写法”。

    c71b98f310c042000ee7bcc391c52281.png

    多数四方字暂时沿用原来的发音,不指定字根拼读规则,是为了避免在前期推广中出现混淆。

    但“四方数”必须先规定读音。ABCDEF作为十六进制数字,在讲英语时,直接读字母音还行,至少不重音。

    倘若放到汉语,E的字母音与汉语中“yi”的发音接近,在报数时很容易混淆。F的字母音有两个音节,相比汉语中其他数字的单音节发音,不够和谐。

    所以本人参考twelve 、thirteen、fifteen的第1个音节,eleven、fourteen第2个音节,以及汉字“十”的发音。为四方语对应的“CDF、BE、A”的6个原创数字制定发音。

    B之所以取eleven第2个音节 /lai/(汉字注音:来),是因为第1个音节和汉语中“yi”的发音相互冲突。

    E取fourteen第2个音节 /tin/(汉字注音:太),是因为第1个音节的发音与英语“four”冲突。

    /tin/的发音与其它数字和基本字根都不重复,但早期推广阶段,在英语环境中很容易产生混淆。当出现4、9、D与E连读的情形,容易与英语十进制发音相混淆。比如“9E”的英语发音,与nineteen以及ninety就很接近。

    十六进制普及后,十进制数字可逐步退出历史舞台。在十六进制环境下,英语 ten、thirteen、fourteen等现阶段容易出现混淆的发音,将从口语中消失,不再有数字发音冲突。

    但为防止记忆混乱,英语环境中,可先将 E读作“太”(拼音:tai),更容易过渡。其它语言环境,直接将E读作/tin/,一步到位了。

    严格来说“十”是数位而非数字,但现实生活中十进制数字“10”常用“shi”的发音,很少读作“yi shi”,已经约定俗成了,不会混淆。

    选“shi”(汉字注音:时)作为十六进制数字A的发音,是对十进制的纪念。而英语“ten”的发音与 /tin/ 太相似。

    在讲中文时,英文版十六进制数字“ABCDEF”可按照“6个原创四方数”的发音,依次读作:“时来特色太(tin)飞”。

    四方语作为一门国际语言,希望能为地球语言统一作出自己的贡献,首先便应当制定一套统一的数字发音。

    从易于国际推广的角度看,汉语数字的单音节更清晰,但英语的普及度已经很高了。

    制定规则、设计策略,必须优先考虑现有状态,尊重多数人的习惯,此乃“维护既得利益”原则的体现。所以四方数的6个原创数字,参考了英语数字制定发音。

    但统一的数字发音,理应清晰简洁,最好是单音节。所以678三个数字,采用了汉语发音。

    其它数字基本上保留英语发音,但又适当进行了简化。比如四方语中5读作/fai/,9读作/nai/,取英语发音的第1个音节。

    16个四方数的发音中:“0123459来自英语,678来自汉语,ABCDEF发音来自四方语”。本人建议将它们作为统一全球数字发音的标准。

    基本字根编号对应着16进制数字0—F,所以“四方数”读法是“基本字根”汉字之外的另一套正确发音。本人将两套发音整合,编了的四句顺口溜,方便记忆。

    b7c65200a7456b7fd1e5bd3c8ba79551.png

    特别说明一下基本字根中的“一”(编号“0000”, 对应汉字“一”,手印“握拳”),表现出阴阳叠加、色即是空的纠缠状态。

    01叠加,在象学上是非常合理的设计。意象能随时互换,方可适合天人感应的灵活,避免偏激解读。

    “一”字根对应的数量是0,所以制表时常用“一”来占位,表示“空格”。

    汉字“一”使用频率非常高,常见组词:“一样、一起、一些、一直、一同、一般、一边、一览、一道、一心一意......”,主要用来表示“全部、整体、共同......”等意象,其含义早已超越“数量1”而深入日常生活和内心世界。

    每个字都可以随着语言发展被赋予新意象、逐渐淘汰旧意象。

    “一”曾经蕴含的“数量1”之意象,可逐渐淡出历史舞台,由四方数“1”取代。

    一天、一本、一只、一副、一支、一口......等表示数量的词,其中的“一”可用四方数“1”来替代。

    b98bda709493aadd1e8138694f6d5ada.png

    未来人只需知道:“一”在历史上曾表示过数字1,但现在很少再用这个意象了。

    口语区别更明显: 二进制数字1读作“幺”;四方语数字1读作/w∧n/;基本字根“yi”的发音,已经与“数字”没直接关系。

    也不必担心/ w∧n/与数位“万”发音重复的问题,因为“个十百千万亿”在十六进制中不再作为“数位”使用。另有31个表示“十六进制数位”的原创四方字,在后续关于“十进制与十六进制并存期注意事项”的文章中,会详细讲解。

    c976523aa7799de70e011397a57c60ab.png

    “四方手语”有一套表示十六进制数字的简易手印: 1格用“空手印”占位,2格表示“基本字根”。双手配合是标准的四方手语,不会出现歧义。双手结印表示数字0时: “2格握拳,1格空手占位。”

    a3d48e715fb14ab301e3f476bcfc80ea.png

    但有时需要单手表示数字,可以在打出基本手印之后左右晃动手掌,让看的人知道是在输出数字。在单手表示数字0时,为了避免“单手握拳”可能产生的混淆,也可用“空手印”左右晃动,来表示数字0。

    展开全文
  • Java中数值型字面量的表示,二进制,八进制,十六进制(可以表示小数),e,下划线的介绍

    Java中数值型字面量的表示

    二进制

    在Java7开始,加上 0b或0B就可以写二进制 ,比如0b1001就是9。

    八进制

    数字以0开头即为表示8进制。 例如:八进制012,就是十进制的10,可以前缀0有多个,比如00022,表示十进制18.

    十六进制

    数字以0x或0X开头表示16进制。例如0x14,就是十进制的20。0xa0就是160。

    十六进制可以表示小数

    例如:0x1p-3就是十进制的0.125,0x2.8p0就是十进制的2.5,0x12.2p4是十进制的290。

    p表示指数,基数是2。

    计算规则,拿0x12.2p4举例,(1*161+2*160 + 2*16-1)*24

    E(e)

    对于double或float类型可以用e进行简化。比如1e9,就是109,34.2E-3,就是34.2*10-3(3.42E-4)

    下划线

    Java7开始,还可以利用 下划线来分割数字 ,使数字具有更好的可读性,例如:1_000_000 、0b11_1001等。byte,int,long,double,float,二进制,八进制,十六进制下都可以使用下划线。下划线除了在开头和末尾不能使用,可以在任意两数字中间使用,而且可以使用多个。最后Java编译器会在编译的时候把这些下划线去掉。

    展开全文
  • 二进制数到十六进制数的转换 基本原理:由于十六进制数基数是2的四次幂,所以一个二进制转换为十六进制,如果是整数,只要从它的低位到高位每4位组成一组,然后将每组二进制数所对应的数用十六进制表示出来。...
  • IEEE754规定 ...实数=》小数: 10.625=>1010.101==>1.010101*2的三次方 按照规则填充4字节空间即为: 符号位:0 指数位:3+127 尾数位:01010100000000000000000(共23位) 合并得: 01000001001...

    IEEE754规定

    1、 各个位域意义
    符号位    指数位    尾数位

    1位       8位       23位

    2、指数位正负:  当指数小于127(01111111)时为一个负数,反之为一个正数
        

    实数=》小数:
    10.625  =>  1010.101  ==> 1.010101 * 2的三次方

    按照规则填充4字节空间即为:
    符号位:  0
    指数位:  3 + 127
    尾数位:  01010100000000000000000(共23位)

    合并得:
    0 10000010 01010100000000000000000 == 0x412A0000

    float
    共计32位,折合4字节
    由最高到最低位分别是第31、30、29、……、0位
    31位是符号位,1表示该数为负,0反之。
    30-23位,一共8位是指数位。
    22-0位,一共23位是尾数位。
    每8位分为一组,分成4组,分别是A组、B组、C组、D组。
    每一组是一个字节,在内存中逆序存储,即:DCBA

    27.0表示成二进制为:11011.0

    用科学计数法表示为1.10110*2^4,现在我们要的尾数和指数都出来了。

    尾数为:1101 10 (删除前面的第一个1,因为用科学计数法表示,二进制中第一个永远都为1,计算机在存储的时候就没有存储这个1,只存储小数点后面的位数)   不足23位,补0,就是1011 0000 0000 0000 0000 000(23位)

    指数:为4 。一共8位,可以表示范围是0 ~ 255的无符号整数,也可以表示-128~127的有符号整数。但因为指数是可以为负的,所以为了统一把十进制的整数化为二进制时,都先加上127。

    所以:4+127=131  变成二进制就是10000011

    27.0用二进制表示就是:

    加上第31位的符号位0

    就是0100 0001 1101 1000 0000 0000 0000 0000

    十六进制就是:41 D8 00 00

     

    再看一个数27.5,二进制为11011.1

    1.10111*2^4

    尾数(小数点后的数)10111,补够23位 1011 1000 0000 00000000 000

    指数:4,加上127,就是131,二进制1000 0011

    用二进制表示就是 (符号数位1位)0 (指数位8位)1000 0011 (尾数位23位)1011 1000 0000 00000000 000

    写成二进制标准形式:0100 00011101 1100 0000 0000 0000 0000

    写成16进制就是41 DC 00 00

    uint32_t data2hex(uint16_t data)  
    {
    	uint32_t temp;  
    	uint8_t i=0;  
      
    	temp = data;//转存需要计算的数值  
    	while(temp)  
    	{         
    		temp >>= 1;  
    		i++;//计算当前值的尾数占有的位数  
    	}  
    	i--;//计算下来,i会多加一次,这儿减掉  
    	temp = data;  //再次赋值,准备合并
    	temp = temp<<(23-i);//补足23位尾数  
    	temp = (i+127)<<23 | temp;//计算指数,并与尾数合并起来   
    	temp = temp & ~(1<<23);//确定正负  我这儿都是正数,就没管负数了  
    	
    	return temp;//这里就已经是以浮点数的存储方式表示的传进来的参数了
    }

    附在线计算器:https://www.23bei.com/tool-23.html#

     

    QQ图片20160605160238.png

    IEEE 754 - 百度百科

    展开全文
  • 二进制、八进制、十进制、十六进制(整数、小数)之间的转换 n表示位数----(整数,从右边是第一位;小数,从左是第一位,即小数点后是第一位) num表示对应位置的数值 1…8表示1到8中任意数值 !表示阶加,一直加到n...
  • 十六进制:H(Hexadecimal) 如:(4B1)16又可写为4B1H (12345)8又可以写为12345O (10011)2又可以写为10011B 1、非十进制与十进制的转换 1.1、基本原则: 按权展开法,即把各数位乘权的i次方后相加 ...
  • 1.1、基本原则:按权展开法,即把各数位乘权的i次方后相加1.2、实例:例1:二进制与十进制的转换,带小数部分01011010.01B=0×2^7+1×...如有小数部分,对应乘相应8的-i次方【字母O,表示进制】245O = 3x8^2+4x8^1...
  • 前段时间,在编写一个GPS对时上位机时遇到了这个问题:十六进制经纬数据转IEEE-754浮点数据。其实,理解了其中原理就很简单.已知GPS数据:经纬度格式:ddd.ddddd°(度),小数部分5位,报文中用16进制单精度float表示...
  • 本程序主要是将十进制转十六进制函数(包括正负整数及小数),并根据设置显示大小端。 输入参数说明:x表示十进制数,N表示最后转换成的十六进制数的位数(字节数),flag表示大小端(1是小端,2是大端)
  • 2.这个问题给你一个机会思考2的幂和它们的十六进制表示。 3.这个问题给你一个机会试着对一些小的数在十六进制和十进制表示之间进行转换。 4.这个问题说明了怎样用布尔代数描述和解释现实世界的系统。 5....
  • 一、什么是十六进制十六进制(英文名称:Hexadecimal),是计算机中数据的一种表示方法。...十进制数转换成十六进制数的方法是:十进制数的整数部分“除以16取余”,十进制数的小数部分“乘1...
  • 二进制转成十六进制

    2012-11-11 14:19:00
    基本原理:由于十六进制数基数是2的四次幂,所以一个二进制转换为十六进制,如果是整数,只要从它的低位到高位每4位组成一组,然后将每组二进制数所对应的数用十六进制表示出来。如果有小数部分,则从小数点开始,...
  • 1. Java中数字默认是十进制,二进制...在理解二进制和十进制转换后,对于一个整数,比如 7 ,我们知道二进制表示是 0111,但是一个负数的二进制怎么表示呢,你有想过 -8 怎么用二进制表示吗?在计算机中,存储的都是...
  • 进制转换:二进制、八进制、十六进制、十进制之间的转换 不同进制之间的转换在编程中经常会用到,尤其是C语言。 将二进制、八进制、十六进制转换为十进制 二进制、八进制和十六进制向十进制转换都非常容易,就是“按...
  • 将二进制、八进制、十六进制转换为十进制 二进制、八进制和十六进制向十进制转换都非常容易,就是“按权相加”。所谓“权”,也即“位权”。 假设当前数字是 N 进制,那么: 【1】对于整数部分,从右往左看,第 i 位...
  • 将二进制、八进制、十六进制转换为十进制 二进制、八进制和十六进制向十进制转换都非常容易,就是“按权相加”。所谓“权”,也即“位权”。 假设当前数字是 N 进制,那么: 对于整数部分,从右往左看,第 i 位的位...
  • 十进制到二进制,八进制以及十六进制的转换 二进制、八进制和十六进制向十进制转换都非常容易,就是“按权相加”。所谓“权”,也即“位权”。 假设当前数字是N进制,那么: 1.对于整数部分,从右往左看,第i位的...
  • 将二进制、八进制、十六进制转换为十进制 二进制、八进制和十六进制向十进制转换都非常容易,就是“按权相加”。所谓“权”,也即“位权”。 假设当前数字是 N 进制,那么: 对于整数部分,从右往左看,第 i 位的...
  • 我们需要了解一个数学关系,即23=8,24=16,而八进制和十六进制是用这关系衍生而来的,即用三位二进制表示一位八进制,用四位二进制表示一位十六进制数。接着,记住4个数字8、4、2、1(23=8、22=4、21=2、20=1)。 ...
  • 十六进制 及进制间的转换

    千次阅读 2015-07-15 14:02:31
    十进制数可以转换成十六进制数的方法是:十进制数的整数部分“除以16取余”,十进制数的小数部分“乘16取整”,进行转换。 比如说十进制的0.1转换成八进制为0.0631463146314631。就是0.1乘以8=0.8,不足1不取整,...
  • 十进制转二进制 十进制数除以2,得到的...二进制、八进制、十六进制 转十进制 1110 B=1 X 2的3次方+1 X 2的2次方+1 X 2的1次方=14 (B表二进制) 751 Q=7 X 8的2次方+5 X 8的1次方+1 X 8的0次方 (Q表示八进制) 254B H...
  • 二进制数与十六进制数相互转换;二进制数转换成十六进制数,概括为“四位合一”。 即:以小数点为基推,整数部分从右...表示,小数点位置不变,即得到十六进制数。如1011010011110111B 转载于:https://blog...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 763
精华内容 305
关键字:

十六进制表示小数