二进制转十进制,十进制转二进制的算法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
虽然莫尔斯发明了电报,但他缺乏相关的专门技术。他与Alfred Vail签定了一个协议,让他帮自己制造更加实用的设备。Vail构思了一个方案,通过点、划和中间的停顿,可以让每个字符和标点符号彼此独立地发送出去。他们达成一致,同意把这种标识不同符号的方案放到摩尔斯的专利中。这就是现在我们所熟知的美式摩尔斯电码,它被用来传送了世界上第一条电报。
12M N O P Q R S T U V W X Y Z A B C D E F G H I J K L
十进制整数转换为二进制整数采用"除2取余,逆序排列"法。具体做法是:用2去除十进制整数,可以得到一个商和余数;再用2去除商,又会得到一个商和余数,如此进行,直到商为零时为止,然后把先得到的余数作为二进制数的低位有效位,后得到的余数作为二进制数的高位有效位,依次排列起来。
2.十进制小数转换为二进制小数
字母和各种字符在计算机中的传输普遍采用Ascll码(American Standard Code For lnformation lnterchange),即美国标准信息交换码,它用了7位二进制数来表达字母和各种常用字符(见附录)。
对于汉字信息的表示比较复杂,我国有汉字几万个,常用的汉字也有7000多个,为了统一,我国制定了汉字编码标准,规定了一、二级汉字共6763个,用两个字节(16位二进制代码)来表示一个汉字进制转二进制:
2 89
2 44 …… 1
2 22 …… 0
2 11 …… 0
2 5 …… 1
2 2 …… 1
2 1 …… 0
0 …… 1
·十进制小数转二进制数:"乘以2取整,顺序输出"
例:
(0.625)10= (0.101)2
0.625
X 2
1.25
X 2
0.5
X 2
1.0
2.八进制与二进制的转换
例:将八进制的37.416转换成二进制数:
H ····
I ··
J ·---
K -·-
L ·-··
M --
N -·
O ---
P ·--·
Q --·-
R ·-·
S ···
T -
U ··-
V ···-
W ·--
X -··-
Y -·--
Z --··
1·----
2··---
3···--
4····-
5·····
6-····
7--···
8---··
9----·
这种代码可以用一种音调平稳时断时续的无线电信号来传送,通常被称做连续波(Continuous Wave),缩写为CW。它可以是电报电线里的电子脉冲,也可以是一种机械的或视觉的信号(比如闪光)。
一般来说,任何一种能把书面字符用可变长度的信号表示的编码方式都可以称为莫尔斯电码。但现在这一术语只用来特指两种表示英语字母和符号的摩尔斯电码:美式莫尔斯电码被使用了在有线电报通信系统;今天还在使用的国际莫尔斯电码则只使用点和划(去掉了停顿)。
举例:
TEOGSDYUTAENNHLNETAMSHVAED
解:
将字母分截开排成两行,如下
T E O G S D Y U T A E N N
H L N E T A M S H V A E D
再将第二行字母分别放入第一行中,得到以下结果
THE LONGEST DAY MUST HAVE AN END.
2、恺撒移位密码。
3、进制转换密码。
比如给你一堆数字,乍一看头晕晕的,你可以观察数字的规律,将其转换为10进制数字,然后按照每个数字在字母表中的排列顺序,拼出正确字母。
举例:110 10010 11010 11001
解:
很明显,这些数字都是由1和0组成,那么你很快联想到什么?二进制数,是不是?嗯,那么就试着把这些数字转换成十进制试试,得到数字6 18 26 25,对应字母表,破解出明文为frzy,呵呵~
a b c d e f g h i j k l m n o p q r s t u v w x y z
1B C D E F G H I J K L M N O P Q R S T U V W X Y Z A
2C D E F G H I J K L M N O P Q R S T U V W X Y Z A B
0-----
? ··--··
/ -··-·
() -·--·-
- -····-
. ·-·-·-
还有一种表示莫尔斯密码的方法:将旗子向左划表示一横,向右表示一点。这种方法已经没多少人知道了。
几种常见密码形式:
1、栅栏易位法。
即把将要传递的信息中的字母交替排成上下两行,再将下面一行字母排在上面一行的后边,从而形成一段密码。
9J K L M N O P Q R S T U V W X Y Z A B C D E F G H I
10K L M N O P Q R S T U V W X Y Z A B C D E F G H I J
11L M N O P Q R S T U V W X Y Z A B C D E F G H I J K
用2辗转相除至结果为1
将余数和最后的1从下向上倒序写就是结果
例如302
302/2 = 151余0
151/2 = 75余1
18/2 = 9余0
9/2 = 4余1
4/2 = 2余0
2/2 = 1余0
故二进制为
二进制转十进制
从最后一位开始算,依次列为第0、1、2...位
5 D F.9
0101 1101 1111.1001
即:(5DF.9)16=(.1001)2
例:将二进制数.111转换成十六进制:
0110 0001.1110
6 1.E
即:(.111)2=(61.E)16
各类密码研究大全
莫尔斯电码是美国人莫尔斯于1844年发明的。
莫尔斯电码的历史
最早的莫尔斯电码是一些表示数字的点和划。数字对应单词,需要查找一本代码表才能知道每个词对应的数。用一个电键可以敲击出点、划以及中间的停顿。
二进制转十进制,十进制转二进制的算法

表1二进制数和十进制数换算对照表
二进制
十进制
二进制
十进制
二进制
十进制
二进制
十进制
0000
0
0011
3
0110
6
1001
9
0001
1
0100
4
0111
7
1010
10
0010
2
0101
5
1000
8
1011
11
采用“二进制数”的算术运算也比较简单,制造成本更经济。二进制的加法运算和乘法运算公式都各有四条规则:加法有0+0=0,0+1=1,1+0=1,1+1=10;乘法有0*0=0,0*1=0,1*0=0,1*1=1,而十进制的加法和乘法运算公式从0+0开始到9+9,从0*0开始到9*9各需规则100条。
1.二进制与十进制的转换
(1)二进制转十进制<BR>方法:"按权展开求和"
例:
(1011.01)2=(1×23+0×22+1×21+1×20+0×2-1+1×2-2)10
=(8+0+2+1+0+0.25)10
=(11.25)10
(2)十进制转二进制
·十进制整数转二进制数:"除以2取余,逆序输出"
例:(89)10=()2
第n位的数(0或1)乘以2的n次方
得到的结果相加就是答案
例如:.转十进制:
第0位:1乘2的0次方=1
1乘2的1次方=2
0乘2的2次方=0
1乘2的3次方=8
0乘2的4次方=0
1乘2的5次方=32
1乘2的6次方=64
0乘2的7次方=0
然后:1+2+0+8+0+32+64+0=107.
二进制=十进制107.
莫尔斯电码由点(.)、划(-)两种符号按以下原则组成:
1,一点为一基本信号单位,每一划的时间长度相当于3点的时间长度。
2,在一个字母或数字内,各点、各划之间的间隔应为两点的长度。
3,字母(数字)与字母(数字)之间的间隔为7点的长度。
A ·-
B -···
C -·-·
D -··
E ·
F ··-·
G --·
电报公司根据要发的信的长度收费。商业代码精心设计了五个字符组成一组的代码,做为一个单词发送。比如:BYOXO ("Are you trying to crawl out of it?";LIOUY ("Why do you not answer my question?",;AYYLU ("Not clearly coded, repeat more clearly."。这些五个字符的简语可以用莫尔斯电码单独发送。在网络用辞中,我们也会说一些最常用的莫尔斯商用代码。现在仍然在业余无线电中使用的有Q简语和Z简语:他们最初是为报务员之间交流通信质量、频率变更、电报编号等信息服务的。
十进制小数转换成二进制小数采用"乘2取整,顺序排列"法。具体做法是:用2乘十进制小数,可以得到积,将积的整数部分取出,再用2乘余下的小数部分,又得到一个积,再将积的整数部分取出,如此进行,直到积中的小数部分为零,或者达到所要求的精度为止。
然后把取出的整数部分按顺序排列起来,先取的整数作为二进制小数的高位有效位,后取的整数作为低位有效位。
一、二进制数转换成十进制数
由二进制数转换成十进制数的基本做法是,把二进制数首先写成加权系数展开式,然后按十进制加法规则求和。这种做法称为"按权相加"法。
二、十进制数转换为二进制数
十进制数转换为二进制数时,由于整数和小数的转换方法不同,所以先将十进制数的整数部分和小数部分分别转换后,再加以合并。
1.十进制整数转换为二进制整数
2.二进制代码
电子计算机中的数是用二进制表示的,在计算机中也采用二进制代码表示字母、数字字符、各种各样的符号、汉字等。在处理信息的过程中,可将若干位的二进制代码组合起来表示各种各样的信息。但由于二进制数不直观,人们在计算机上实际操作时,输入、输出的数使用十进制,而具体转换成二进制编码的工作则由计算机软件系统自动完成。
3D E F G H I J K L M N O P Q R S T U V W X Y Z A B C
4E F G H I J K L M N O P Q R S T U V W X Y Z A B C D
5F G H I J K L M N O P Q R S T U V W X Y Z A B C D E
1838年1月8日,Alfred Vail展示了一种使用点和划的电报码,这是摩尔斯电码前身。
作为一种信息编码标准,莫尔斯电码拥有其他编码方案无法超越的长久的生命。莫尔斯电码在海事通讯中被作为国际标准一直使用到1999年。1997年,当法国海军停止使用莫尔斯电码时,发送的最后一条消息是:“所有人注意,这是我们在永远沉寂之前最后的一声呐喊”!
也就是一种最简单的错位法,将字母表前移或者后错几位,例如:
明码表:ABCDEFGHIJKLMNOPQRSTUVWXYZ
密码表:DEFGHIJKLMNOPQRSTUVWXYZABC
这就形成了一个简单的密码表,如果我想写frzy(即明文),那么对照上面密码表编成密码也就是iucb(即密文)了。密码表可以自己选择移几位,移动的位数也就是密钥。
6G H I J K L M N O P Q R S T U V W X Y Z A B C D E F
7H I J K L M N O P Q R S T U V W X Y Z A B C D E F G
8I J K L M N O P Q R S T U V W X Y Z A B C D E F G H
4、字母频率密码。
关于词频问题的密码,我在这里提供英文字母的出现频率给大家,其中数字全部是出现的百分比:
a 8.2b 1.5c 2.8d 4.3
e 12.7f 2.2g 2.0h 6.1
i 7.0j 0.2k 0.8l 4.0
m 2.4n 6.7o 7.5p 1.9
q 0.1r 6.0s 6.3t 9.1
u 2.8v 1.0w 2.4x 0.2
y 2.0z 0.1
词频法其实就是计算各个字母在文章中的出现频率,然后大概猜测出明码表,最后验证自己的推算是否正确。这种方法由于要统计字母出现频率,需要花费时间较长,本人在此不举例和出题了,有兴趣的话,参考《跳舞的小人》和《金甲虫》。
5、维热纳尔方阵。
上面所说的频率分析,很容易破解较长篇幅的密文,于是维热纳尔继承前人的经验,创造出了这个维热纳尔方阵,从而克服了词频分析轻易能够破解密码的弊端,成为一种较为强大的密码编译形式。
37.4 1 6
011 111.100 001 110
即:(37.416)8=(11111.)2
例:将二进制的10110.0011转换成八进制:
0 1 0 1 1 0 . 0 0 1 1 0 0
2 6 . 1 4
即:(10110.011)2=(26.14)8
3.十六进制与二进制的转换<BR>例:将十六进制数5DF.9转换成二进制:
相关文档
最新文档