精华内容
下载资源
问答
  •  1、十进制写法:123: $n1 = 123;...dec: 十进制 bin:二进制 oct:八进制 hex:十六进制 1、十进制转二进制decbin(),除2取余倒着写 例:$v1 = decbin(123); //注意:参数必须是10进制
    

    1、十进制写法:123:
    $n1 = 123;
    2、八进制写法: 0123
    $n2 = 0123;
    3、十六进制写法: 0x123
    $n3 = 0x123;

    先学习几个单词:
    dec: 十进制
    bin:二进制
    oct:八进制
    hex:十六进制

    1、十进制转二进制decbin(),除2取余倒着写
    例:$v1 = decbin(123); //注意:参数必须是10进制数字,转换后的结果必然是二进制字符串。
    <?php
             $v1=123;
      $v2=decbin($v1);  //十进制转换二进制
      echo $v2;
    ?>
    注:我们也可以通过手工的方式来完成10进制转2进制的完整过程。
    基本做法是:将10进制数字除以2,并取得余数,如果除得的商不为0,则继续除以2,并继续去的余数,直到商为0。然后将所有取得的余数,按“倒序写出”,就是对应的2进制数字

    2、十进制转八进制decoct(),除8取余倒着写
    使用php系统函数: $r1 =  decoct(十进制数字);  //结果是一个8进制数字字符串。
    <?php
         $v1=178;
      $v2=decoct($v1);  //十进制转换八进制
      echo $v2;
    ?>
    注:我们也可以通过手工的方式来完成10进制转8进制的完整过程。
    基本做法是:将10进制数字除以8,并取得余数,如果除得的商不为0,则继续除以8,并继续去的余数,直到商为0。然后将所有取得的余数,按“倒序写出”,就是对应的8进制数字:

    3、十进制转十六进制dechex(),除16取余倒着写
    16进制的数字包括如下(从0开始):
    0 1 2 3 4 5 6 7 8 9 A B C D E F
    对应10进制其实是:
    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

    系统函是:dechex(十进制数字), 结果是16进制数字字符串。
    例:<?php
         $v1=178;
      $v2=dechex($v1);  //十进制转换十六进制
      echo $v2;
    ?>
    注:手工运算:
    基本做法是:将10进制数字除以16,并取得余数,如果除得的商不为0,则继续除以16,并继续去的余数,直到商为0。然后将所有取得的余数,按“倒序写出”,就是对应的16进制数字

    4、二进制转十进制bindec(),每位数值乘以2的权值然后相加
    例:$v1  =  bindec(“二进制数字字符串”) ;//得到的结果是10进制数字
    <?php
         $v1="1010110";
      $v2=bindec($v1);  //二进制转换十进制
      echo $v2."其数据类型是:".getType($v2);
    ?>
    注:手工转换:
    二进制数字的权值,从右到左,分别是:
    2的0次方,2的1次方,2的2次方,2的3次方,2的4次方,2的5次方,.....
    即分别是(10进制大小):
    1,2,4,8,16,32
    手工计算:
    1010110
    =1*26 + 0*XX  + 1*24 + 0*XX  + 1*22 + 1*21 + 0 //说明,其中XX表示无所谓的数字值
    =64 + 0 + 16 + 0 + 4 + 2 + 0
    =86

    5、八进制转十进制octdec() ,每位数值乘以8的权值然后相加
    例:用系统函数是:$v1  =  octdec(“8进制数字字符串”) ;//得到的结果是10进制数字
    <?php
         $v1="1234";
      $v2=octdec($v1);  //八进制转换十进制,结果是十进制数
      echo $v2."其数据类型是:".getType($v2);
    ?>

    6、十六进制转十进制hexdec(),每位数值乘以16的权值然后相加
    例:用系统函数是:$v1  =  hexdec(“16进制数字字符串”) ;//得到的结果是10进制数字
    <?php
         $v1="12AB";
      $v2=hexdec($v1);  //16进制转换10进制,结果是10进制数
      echo $v2."其数据类型是:".getType($v2);
    ?>

    思考:特殊状况
    $v1 = bindec(123);       //理解过程:bindec(“123”) =>bindec(“1”)=>1
    $v2 = bindec(0123);     //理解:0123是8进制数字,其10进制值为:83,再当作二进制字符串就是“83”,结果就只能是0
    $v3 = bindec(“0123”);  //理解:因为直接就是字符串了,就当二进制字符串用,结果是1
    $v4 = octdec(0123);   //理解:0123是8进制数字,其10进制值为:83,再当作8进制字符串就是“83”,但8进制中没有“8”这个数字,就只识别出一个“3”这个数字



    展开全文
  • 种二进制的输出

    2012-06-29 14:31:17
    而十进制是cout〈〈 dec〈〈 a; 二进制则没有默认的输出格式,需要自己写函数进行转换,下面列出一些方法。  #include 〈iostream〉  #include 〈list〉  #include 〈bitset〉  using namespace std;

    C++输出十六进制是cout〈〈hex〈〈 a;

    而八进制是cout〈〈 ocx〈〈 a;

    而十进制是cout〈〈 dec〈〈 a;

    二进制则没有默认的输出格式,需要自己写函数进行转换,下面列出一些方法。  


    #include 〈iostream〉 
    #include 〈list〉 
    #include 〈bitset〉 
    using namespace std; 


    //递归输出二进制函数 
    void BinaryRecursion(int n) 

     int a; 
     a=n%2; 
     n=n〉〉1; 
     if (n==0) 
      ; 
     else 
      BinaryRecursion(n); 
     cout〈〈a; 


    //使用容器转换二进制 
    void BinaryVector(int n) 

     int temp; 
     temp=n; 
     list〈int〉 L; 
     while(temp!=0) 
     { 
      L.push_front(temp%2); 
      temp=temp〉〉1; 
     } 
     for (list〈int〉::iterator iter=L.begin();iter!=L.end();iter++ ) 
      cout〈〈*iter; 
     cout〈〈endl; 


    //一般方法,32位,逐步与1做与运算。 
    void Binarycout(int n) 

     for (int i=31;i〉=0;i--) 
     { 
      cout〈〈((n〉〉i)&1); 
     } 
     cout〈〈endl; 


    //使用bitset转换二进制 
    void BinaryBitset(int n) 

     cout〈〈bitset〈sizeof(int)*8〉(n)〈〈endl; 

    int main() 

     int a=1045,b=2; 
     int c; 
     c=a+b; 
     cout〈〈"BinaryRecursion(c):"; 
     BinaryRecursion(c); 
     cout〈 BinaryVector(c); 
     cout〈〈"Binarycout(c):"; 
     Binarycout(c); 
     cout〈〈"BinaryBitset(c):"; 
     BinaryBitset(c); 
     cout〈〈"BinaryChar(c):"; 
     BinaryChar(c); 
     //cout〈 return 0; 

    ... ...

    运行后的结果如下: 
    BinaryRecursion(c):10000010111 
    BinaryVector(c):10000010111 
    Binarycout(c):00000000000000000000010000010111 
    BinaryBitset(c):00000000000000000000010000010111 
    BinaryChar(c):10000010111 
    Press any key to continue 

    从中可以看出,有两种运算会得出32位的结果。 

    如果是C,就用字符转换函数,或者直接除后和1做与运算。

     #include<stdio.h>
    void printb(int,int);
    int main()
    {
        int x;
        printf("Input number:");
        scanf("%d",&x);
        printb(x,sizeof(int)*8);
        putchar('\n');
        return 0;
    }
    void printb(int x,int n)
    {
        if(n>0)
        {
            putchar('0'+((unsigned)(x&(1<<(n-1)))>>(n-1)));
            printb(x,n-1);
        }
    }

    展开全文
  • 常见的进制: 二进制 binary -----> bin 八进制 octal ----->...十进制 decimal -----> dec ...十六进制 hexadecimal ----->...php提供了常见进制之间转换的函数 二进制转为其他进...

     常见的进制:

    二进制      binary        ----->  bin

    八进制      octal          ----->  oct

    十进制      decimal      ----->  dec

    十六进制   hexadecimal     ----->  hex

     

    php提供了几常见进制之间转换的函数

    二进制转为其他进制

    binoct();//转为八进制

    bindec();//转为十进制

    binhex();//转为十六进制

    八进制转为其他进制

    octbin();//转为二进制

    octdec();//转为十进制

    octhex();//转为十六进制

    十进制转为其他进制

    decbin();//转为二进制

    decoct();//转为八进制

    dechex();转为十六进制

    十六进制转为其他进制

    hexbin();转为二进制

    hexoct();//转为八进制

    hexdec();//转为十六进制

     

    上面列举了这么多,其实自己感觉一点用没有,对于上面的这些函数,你只需要记住着bin、oct、dec、hex就可以了,你要把a进制转为b进制,那就是ab()
    举个简单的例子:

    把二进制(bin)转为十进制(dec): bindec();

    就这么简单

    但这样可能还不能满足我们的需求,于是php有个我们提供了一个真正实现爱咋转就咋转的函数:base_convert();

    base_convert() 该函数有三个参数

    string base_convert ( string $number , int $frombase , int $tobase )

    举个列子:
    $hexadecimal = '123456';//十进制
    echo base_convert($hexadecimal, 10, 5);//转为五进制

    转载于:https://www.cnblogs.com/boundless-sky/p/10856718.html

    展开全文
  • 编程计算中常用到16进制,8进制,2进制的加减乘除运算,这里搜集了个不错的进制计算器: 1)16进制加法,减法,乘法,除法在线计算器 在16进制计数中,A=10,B=11,C=12,D=13,E=14,F=15。 例如:A+B=10H+5H=21(dec)=...

    编程计算中常用到16进制,8进制,2进制的加减乘除运算,这里搜集了几个不错的进制计算器:
    1)16进制加法,减法,乘法,除法在线计算器
    在16进制计数中,A=10,B=11,C=12,D=13,E=14,F=15。
    例如:A+B=10H+5H=21(dec)=15(hex)
    2)8进制加法,减法,乘法,除法在线计算器
    在8进制计数中,数字取值范围为0~7,逢8进1。
    例如:10进制的“8 ”= 8进制的“10”。
    3)2进制加法,减法,乘法,除法在线计算器
    在2进制计数中,数字取值范围为0~1,逢2进1。
    例如:10进制的“8 ”= 2进制的“1000”。
    4)16进制,10进制,8进制,2进制(2-36任意进制)在线转换计算器
    这是一个进制转换工具,支持自定义进制。

    5)XP计算器(在线版)科学计算器
    作为一程序员很怀念当初的XP计算器,进制转换,计算,移位,取反等等一应具全,这款网页版的值得收藏,增加的开方和开立方功能。

    6)原码,反码,补码相互转换在线计算器
    这款原码,反码,补码计算软件,支持原码转补码,也支持补码转原码,支持10进制、16进制、8进制数据输入,可以试试。

    展开全文
  • 常见的进制: 二进制 binary -----&gt; bin 八进制 octal -----&gt; oct 十进制 decimal -----&... dec ...十六进制 hexadecimal -----&...php提供了常见进制之间转换的函数 二进制转为其他进制 bi...
  • php 中进制之间的转换

    2014-03-19 10:09:00
    作为一个屌丝程序员,没有丰富的经验,只是一味地敲着代码,但终究有一天,我也会成为一个技术大牛,今天学了点进制相互转换的个函数 常见的进制: 二进制 binary -----> bin 八进制 octal -----> oct ...
  • GO二进制字符串转十进制数原生算法

    千次阅读 2019-04-12 19:12:37
    这个包呢也有其转换方式,太多的博客啊写的都是这个包,但是他的耗时太长了,并且性能并不行,比如一个包需要调用百万千万此这个包就吃力了 原生算法 代码一 func Str2DEC(s string) (num int) { l := len(s) ...
  • 由于MATLAB中的dec2bin只能处理正整数,所以我写了一个新的转换函数float2bin 它可以处理正数、负数、整数、浮点数 我加了一个参数length,用来应对某些十进制小数(如0.1)无法转换成有限位二进制小数的情况...
  • 在MATLAB中算出了一个十进制的数组(有百个单元),如何把这些十进制的书转化为16进制呢? 如果是正数直接使用dec2hex函数。如果是负数,将其转换为反码再用dec2hex。  例:a=[-1 10 17 -10 9],需转换为一个...
  • 在MATLAB中算出了一个十进制的数组(有百个单元),如何把这些十进制的书转化为16进制呢? 如果是正数直接使用dec2hex函数。如果是负数,将其转换为反码再用dec2hex。  转换规则:对N位二进制表示的有符号十...
  • 1、流输出 #include <iostream> #include <bitset>///c++中控制进制的头文件 #include <stdlib.h>...///万能头文件,如果选用此头文件,就不用其他所有头文件 ..."十进制 "<...dec<&l
  • shell的各种进制

    2016-09-01 12:00:10
    /bin/bash2 # numbers.sh: 种不同数制的数字表示法.34 # 10进制: 默认情况5 let "dec = 32"6 echo "decimal number = $dec" # 327 # 这没什么特别的.8910 # 8进制: 以'0'(零)开头11 let "oct = 032"12 echo "octal...
  • 这里浅析二进制种运算 先来认识一下关于进制互相转换的函数 php进制转换函数如下: bindec() — 二进制转换为十进制 decbin() — 十进制转换为二进制 dechex() — 十进制转换为十六进制 decoct() — 十...
  • 本文介绍了php中文汉字与16进制编码转换的方法,php汉字编码转换的个例子,有需要的朋友参考下。 用php实现中文汉字与16进制间的编码转换。 例1, <?php //汉字转换为16进制编码 function hexencode($s) { ...
  • JAVA第一二章P1-P9

    2020-08-06 00:02:58
    进制变为十进制:开始→计算器→(左上角)程序员 DEC10进制 位(bit):0或1,代表1位。 字节(byte):8位,数据存储的最小单位。 100,0000,0000,00相当于1024 这种进制方便记录:1KB=1024Byte ;1MB=1024KB ...
  • 今天用到的个matlab函数

    千次阅读 2008-11-05 18:06:00
    doulbe(a)该函数能够返回当前的a的ascii码。dec2bin该函数能够返回当前的十进制数的二进制。bin2dec该函数能够将当前的二进制数转化为十进制。num2str把数值型转换为字符串
  • c++输出的种方式

    千次阅读 2018-04-24 19:46:20
    #include #include using namespace std; 11 int main() { int a = 123; /* cout八进制:"; cout十进制:"<<dec; cout十六进制:"; //往下如果没有其他说明的话输入都为十六
  • PAT B1044的个答案

    2016-11-22 17:00:29
    火星人是以13进制计数的: 地球人的0被火星人称为tret。 地球人数字1到12的火星文分别为:jan, feb, mar, apr, may, jun, jly, aug, sep, oct, nov, dec。 火星人将进位以后的12个高位数字分别称为:tam, hel...
  • base2dec X进制转换为十进制 bin2dec进制转换为十进制 blanks 创建空格串 bone 蓝色调黑白色图阵 box 框状坐标轴 break while 或for 环中断指令 brighten 亮度控制 C c capture (3版以前)捕获...
  • 目的 1 输入输出概念及使用方法 ...cin (可以用空格 制表符 回车分隔输入的个变量) ...///////////////////////////...dec进制输入/输出 hex 十六进制输入/输出 oct 八进制输入/输出 setw(int) 输出宽
  • 一. ASCII码 可以在ununtu下查找ASCII码表: man ASCII 功能:ascii - ASCII character set encoded in octal, decimal, and... 字符 转换为 八进制进制 十六进制 最好能记住下面这个: Oct Dec Hex Char 0...
  • ID卡数据格式

    千次阅读 2019-03-29 23:33:20
    由于各个厂家的读卡器译码格式不尽相同,在读卡输出时,读出的二进制或十六进制(Hex)结果应该是唯一的,但是又可以通过以下种主要换算办法,输出不同结果的十进制卡号(Dec),因此,请您一定在购买卡片或卡片喷号时...

空空如也

空空如也

1 2 3 4 5
收藏数 88
精华内容 35
关键字:

dec几进制