zoukankan      html  css  js  c++  java
  • C#中位、字节等知识

    本文介绍C#中位、字节等知识。

    1. 位(bit)

    位(bit)有叫做比特,指二进制中的一位,是二进制的最小信息单位。
    bit也被称作小b,用b表示。

    2. 字节(bytes)

    8位表示一个字节。
    由以下公式可以算出一个字节最多表示256

    [2^8 = 256 ]

    但实际上不会是256,8个字节最多表示:

    111111
    

    这个值是

    [2^7+2^6+2^5+2^4+2^3+2^2+2^1+1=255 ]

    这也说明了以下内容:

    byte.MaxValue == 255;
    

    还需要注意的是,byte是无符号的,因此byte的范围是从0-255

    这个byte也被称做大B,用B表示。

    这个byte也是C#里面的byte。

    3. KB和kb

    上面说了B和b,再插一句KB和kb的区别。
    Modem和访问Internet的其他设备的传输速率通常是以“Kbps”(千比特/秒)来计量,而其他的数据传输速率,诸如IDE或SCSI总线的传输速率,则通常以“KBps”(千字节/秒)或“MBps”(兆字节/秒)为单位。
    这两个是不一样的。
    因为8位表示一个字节,所以可以理解

    [B=8b ]

    再我们安装宽带的时候,说10M,指的是10mb,实际上的带宽是:

    [10mb/8=1.25MB ]

    4.sbyte

    sbyte不同于byte的地方在于,sbyte是有符号的,也就是说,sbyte能表示负数。其最高位是符号位,所以sbyte只有7位能表示数值。
    其最小值应该是:

    [-128 ]

    其最大值应该是:

    [2^6+2^5+2^4+2^3+2^2+2^1+1=127 ]

    关于为什么是-128而不是127,这篇文章讲解的很详细,都是补码、反码那套知识。

    5.short ushort int uint long ulong

    short

    short是16位的有符号整数,也就是2字节的整数。
    因为short有符号位,所以只有15位表示数值。其范围应该是

    [-32768 -- 32767 ]

    其他与short道理相同,不解释。

    6. char

    char占用几个字节呢?
    在C#里面采用unicode,2个字节(16位)来表示一个字符。

  • 相关阅读:
    linux学习之linux的hostname修改详解《转》
    不想作死系列--win7远程linux桌面之vncserver
    不想作死系列---virtualbox最小化安装centos6.5
    基于支持向量机的车牌识别-- opencv2.4.7+vs2012环境搭建
    python文件的中文处理以及个人思路
    haskell学习笔记<1>--基本语法
    提醒
    C语言矩阵传递给函数的方法
    0x01数据结构——C语言实现(二叉查找树)
    0x01数据结构——C语言实现(二叉树)
  • 原文地址:https://www.cnblogs.com/wardensky/p/4551625.html
Copyright © 2011-2022 走看看