编码问题,如何把语言及生活中的符号编码成计算机中的二进制表示出来。其中涉及到码表(code point)和编码方式。 码表就是字符与序号对应的表。例如Unicode和ASCII码就是码表。 编码方式就是怎么把序号编码成二进制的方式。UTF 8就是编码方式。 从码表转换到字节,就是编码(encodin ...
分类:
其他好文 时间:
2019-10-05 00:38:41
阅读次数:
81
给定一串长度不超过 1 的字符串,本题要求你将其中所有英文字母的序号(字母 a-z 对应序号 1-26,不分大小写)相加,得到整数 N,然后再分析一下 N 的二进制表示中有多少 0、多少 1。例如给定字符串 PAT (Basic),其字母序号之和为:16+1+20+2+1+19+9+3=71,而 7 ...
分类:
其他好文 时间:
2019-10-04 22:32:06
阅读次数:
83
ASCII 码: 在计算机内部,所有数据都使用二进制表示。每一个二进制位(bit)有 0 和 1 两种状态,因此 8 个二进制位就可以组合出 256 种状态,这被称为一个字节(byte)。 一个字节一共可以用来表示 256 种不同的状态,每一个状态对应一个符号,就是 256 个符号,从 000000 ...
分类:
其他好文 时间:
2019-10-02 14:22:42
阅读次数:
83
题目描述 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。 解法一:设置标志为flag=1,逐个位移至不同位置,比较是否为1. C++实现 class Solution { public: int NumberOf1(int n) { unsigned int flag=1; int ...
分类:
其他好文 时间:
2019-09-30 14:31:32
阅读次数:
77
给定一串长度不超过 105 的字符串,本题要求你将其中所有英文字母的序号(字母 a z 对应序号 1 26,不分大小写)相加,得到整数 N,然后再分析一下 N 的二进制表示中有多少 0、多少 1。例如给定字符串 ,其字母序号之和为:16+1+20+2+1+19+9+3=71,而 71 的二进制是 1 ...
分类:
其他好文 时间:
2019-09-29 11:15:09
阅读次数:
72
计算机与程序设计中,我们常见的数制有二进制(B),八进制(O),十进制(D)和十六进制(H)。二进制数:(以0B开头)二进制数又称机器数,在机器的世界里,只认识0和1,二进制数就使用0和1来表示。一般来说二进制数很容易区分和判断,因为二进制数哪怕一个非常小的数都非常长,有时候我们习惯从右往左,每四位数空格分隔,这样易于辨识数的大小。如:14用二进制来表示可以写作111025用二进制表示可以写作00
分类:
其他好文 时间:
2019-09-22 01:45:43
阅读次数:
85
本来昨晚就准备看两个题的,结果下班回来躺了一下就睡着了,今天继续,嘿嘿(^.^) 题目一:二进制中1的个数 题目描述:输入一个整数,输出该数二进制表示中 1 的个数。 思路:第一眼看到这个题目的我想法是首先将这个数转成二进制字符串,然后通过遍历这个字符串中的每一个元素是不是等于1,然后用个int类型 ...
分类:
其他好文 时间:
2019-09-21 12:24:35
阅读次数:
67
原码:就是数字的符号位加上数字的二进制表示。 正数的原码,补码,反码,一样。不发生改变。 如+7:原码:00000111; 反码:00000111 ; 补码:00000111; 负数的的反码:符号为不变,其余各位置上取反。 负数的补码:反码+1; 例如:-7:原码:10000111; 反码:1111 ...
分类:
其他好文 时间:
2019-09-19 19:12:37
阅读次数:
67
位: 1 bit = 1 二进制数据 字节:1 byte = 8 bit 字符:1 字母 = 1 byte = 8 bit 字符:1 汉字 = 2 byte = 16 bit ASCII码 因为信息在计算机上是用二进制表示的,这种表示法让人理解就很困难。因此计算机上都配有输入和输出设备,这些设备的主 ...
分类:
其他好文 时间:
2019-09-19 15:56:21
阅读次数:
75
在学习原码, 反码和补码之前, 我认为有必要先讲解一下机器数与真值的概念。 1、机器数 一个数在计算机中的二进制表示形式, 叫做这个数的机器数。机器数是带符号的,在计算机用一个数的最高位存放符号, 正数为0, 负数为1。 比如,十进制中的数 +3 ,计算机字长为8位,转换成二进制就是00000011 ...
分类:
其他好文 时间:
2019-09-16 23:49:02
阅读次数:
112