查看“︁2i進制”︁的源代码
←
2i進制
跳转到导航
跳转到搜索
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
'''2i进制''',是由[[高德纳]]于1995年提出来的,当时用作高中科学精英研究用。它是一种以[[2i]]为[[底数_(进制)|基数]]的非标准[[进位制]]。这种进制以0、1、2、3为基本[[數碼]]<ref name="knuth1960">{{cite journal|title=An imaginary number system|journal=Communications of the ACM|volume=3|issue=4|date=April 1960|author=Donald Knuth|authorlink1=Donald Knuth }}</ref>,能够独一无二的表示全体[[复数 (数学)|复数]]。 ==转换2i进制到十进制== <div class="thumb tright"><div style="width:8em;"> {| class="wikitable" style="width:100%; margin:0;" |+ {{math|2''i''}}的冪 !''k'' !(2''i'')<sup>''k''</sup> |- |align="center"| -5 || align="center"| −1/32''i'' |- |align="center"| -4 || align="center"| 1/16 |- |align="center"| -3 || align="center"| 1/8''i'' |- |align="center"| -2 || align="center"| −1/4 |- |align="center"| -1 || align="center"| −1/2''i'' |- |align="center"| 0 || align="center"| 1 |- |align="center"| 1 || align="center"| 2''i'' |- |align="center"| 2 || align="center"| −4 |- |align="center"| 3 || align="center"| −8''i'' |- |align="center"| 4 || align="center"| 16 |- |align="center"| 5 || align="center"| 32''i'' |- |align="center"| 6 || align="center"| −64 |- |align="center"| 7 || align="center"| −128''i'' |- |align="center"| 8 || align="center"| 256 |} {{caption|{{math|2''i''}}的冪}} </div></div> 将2i进制转换为[[十进制]]可以用标准[[公式]]。这个公式是: <math>b</math>进制数<math>\ldots d_3d_2d_1d_0</math> 的[[十进制]]数为 :<math>\cdots + d_3\cdot b^3+d_2\cdot b^2+d_1\cdot b+d_0</math> 2i进制中,<math>b = 2i</math>。 ===示例=== 将 <math>1101_{2i}</math> 转换为[[十进制]],可按照上述公式填入相应数字: :<math>1\cdot(2i)^3 + 1\cdot(2i)^2 + 0\cdot(2i)^1 + 1\cdot(2i)^0 = -8i - 4 + 0 + 1 = -3 - 8i</math> 再比如: <math>1030003_{2i}</math> 十进制是 :<math>1\cdot(2i)^6 + 3\cdot(2i)^4 + 3\cdot(2i)^0 = -64 + 3\cdot 16 + 3 = -13</math> ==十进制转换到2i进制== 也能将[[十进制]]数转换为2i进制。 每个[[复数 (数学)|复数]](形如''a''+''bi'') 都有个2i进制形式。 大多十进制数都只有1个形式,但像1这样的数在十进制中有两种形式[[0.999...|1.{{overline|0}} = 0.{{overline|9}}]], 相对应的 <sup>1</sup>/<sub>5</sub>有两种2i进制形式:1.{{overline|0300}}<sub>2''i''</sub> = 0.{{overline|0003}}<sub>2''i''</sub>。 要转换十进制数,先将[[复数_(数学)#符号表示|实部]]和[[复数_(数学)#符号表示|虚部]]分别转换为2i进制数,然后加到一起即可。 比如, {{math|–1+4''i''}} 等于{{math|–1}} 加上 {{math|4''i''}},{{math|–1}}的2i进制数是103, {{math|4''i''}}的2i进制数是20,因此 {{math|–1+4''i''}} = {{進制|2i|-1+4i|sub=4}}。 转换虚部时,可以先乘以{{math|2''i''}},得到一个[[实数]];然后将这个实数转换为2i进制,然后右移一位即可(等效于除以 {{math|2''i''}})。 例如,虚部是 {{math|6''i''}},先将{{math|6''i''}} 乘以{{math|2''i''}} 得到 {{math|–12}},化为2i进制是{{進制|2i|-12|sub=4}},然后右移一位,得到: {{math|6''i''}} = {{進制|2i|6i|sub=4}}。 转换[[实数]],可以用[[方程组]]来求解。 ===示例:实数=== 我们来求解7的2i进制数。我们很难知道这个2i进制数有多长,所以我们先假设一个比较长的数。 我们先选六位试试,如果不够,我们再延长。 我们写出公式,然后分组: :<math> \begin{align} 7_{10}& = d_{0}+d_{1}\cdot b+d_{2}\cdot b^{2}+d_{3}\cdot b^{3}+d_{4}\cdot b^{4}+d_{5}\cdot b^{5} \\ & = d_{0}+2id_{1}-4d_{2}-8id_{3}+16d_{4}+32id_{5} \\ & = d_{0}-4d_{2}+16d_{4}+i(2d_{1}-8d_{3}+32d_{5}) \\ \end{align} </math> 7是[[实数]],因此''d<sub>1</sub>''、''d<sub>3</sub>'' 和 ''d<sub>5</sub>'' 是0。 剩下就是[[系数]]''d<sub>0</sub>''、''d<sub>2</sub>'' 和 ''d<sub>4</sub>''。 因为 d<sub>0</sub> − 4 d<sub>2</sub> + 16 d<sub>4</sub> = 7 并且他们只能是 0、 1、 2 或 3 。可能的结果是: ''d<sub>0</sub>'' = 3, ''d<sub>2</sub>'' = 3 , ''d<sub>4</sub>'' = 1。 这样就找到了7<sub>10</sub>的2i进制数。 :<math>\begin{align} 7_{10} = 010303_{2i} = 10303_{2i}.\end{align}</math> ===示例: 虚数=== 找一个[[复数 (数学)#符号表示|纯虚数]]的2i进制数,可以模拟实数的方法。 例如6''i'', 也可以用公式。实部全为零,虚部化为6。 6''i'' 很容易看出 ''d<sub>1</sub>'' = 3 其他各位都是0。6''i''就是: :<math>\begin{align}6i_{10} = 30_{2i}\end{align}</math> ===其他的轉換方式=== 對實數而言,2i进制表示法實際上與負四进制相同。要將複數{{math|''x''+''iy''}}轉換成2i进制可以透過將{{math|''x''}}和{{math|''y''/2}}分別轉換為負四进制再將之交錯合併來完成轉換成2i进制的工作。如果{{math|''x''}}和{{math|''y''}}都是有限的二进制小數,則可以使用連續的[[带余除法]]來將十进制數轉換成2i进制: 例如:35+23i={{進制|2i|35+23i|sub=4}} <div style="width:100%; overflow:scroll;"><div style="width:800px; "> 35 23i/2i=11.5 11=12−0.5 35÷(−4)=−8, 餘 3 12/(−4)=−3, 餘 0 (−0.5)×(−4)=2 −8÷(−4)= 2, 餘 0 −3/(−4)= 1, 餘 1 2÷(−4)= 0, 餘 2 1/(−4)= 0, 餘 1 2<small>0</small>0<small>0</small>3 + 1<small>0</small>1<small>0</small>0<small>0</small> + 0.2 = 121003.2 32i+16×2−8i−4×0+2i×0+1×3−2×i/2=35+23i </div></div> ==小数点“.”== 十进制中[[小数点]]用来区分[[整数]]部分和[[小数]]部分。2i进制中小数点一样可以用,比如<math>...d_{5}d_{4}d_{3}d_{2}d_{1}d_{0} . d_{-1}d_{-2}d_{-3}...</math> 中,小数点用来分割''b''的正数[[幂]]和負数幂。带小数点时,公式是: :<math>d_5 b^5 + d_4 b^4 + d_3 b^3 + d_2 b^2 + d_1 b + d_0 + d_{-1} b^{-1} + d_{-2} b^{-2} + d_{-3} b^{-3}</math> 或 :<math> 32id_{5}+16d_{4}-8id_{3}-4d_{2}+2id_{1}+d_{0}+\frac{1}{2i}d_{-1}+\frac{1}{-4}d_{-2}+\frac{1}{-8i}d_{-3}</math> <math>=32id_{5}+16d_{4}-8id_{3}-4d_{2}+2id_{1}+d_{0}-\frac{i}{2}d_{-1}-\frac{1}{4}d_{-2}+\frac{i}{8}d_{-3}</math> ===示例=== 將i轉換為2i進制,没有小数点的话,可能没办法做到。因此: :<math> \begin{align}i & = 32id_{5}+16d_{4}-8id_{3}-4d_{2}+2id_{1}+d_{0}+\frac{1}{2i}d_{-1}+\frac{1}{-4}d_{-2}+\frac{1}{-8i}d_{-3}\\ & = i(32d_{5}-8d_{3}+2d_{1}-\frac{1}{2}d_{-1}+\frac{1}{8}d_{-3})+16d_{4}-4d_{2}+d_{0}-\frac{1}{4}d_{-2}\\ \end{align} </math> 因為[[复数 (数学)#符号表示|实部]]为0,故 ''d<sub>4</sub> = d<sub>2</sub> = d<sub>0</sub> = d<sub>-2</sub> = 0''。<br/> 接著考慮[[复数 (数学)#符号表示|虚部]]部分,当 ''d<sub>5</sub> = d<sub>3</sub> = d<sub> -3</sub> = 0'' 并且 当 ''d<sub>1</sub>=1'' , ''d<sub>-1</sub>=2'' 时结果正确。所以 :<math>\begin{align}i = 10.2_{2i}\end{align}</math>. ===示例(分數)=== 將<math>\frac{1}{3}</math>轉換為2i進制,其結果為-0.{{overline|0203}}。 ==加减法== 2i进制也可以做加减法。 首先要记住以下规则: # 数字超过3时, ''减'' 4 "进" −1 到左边第二位。 # 数字小于0时, ''加'' 4"进" +1 到左边第二位。 简单的说: 「加四进一、减四借一」(當作[[四進制]]來計算)。 和一般竖式加法不同的是,要借/进到左边第二位。 ===示例:加法=== <pre> 1 - 2i 1031 3 - 4i 1023 1 - 2i 1031 1 - 8i 1001 ------- + <=> ----- + ------- + <=> ----- + 2 - 4i 1022 4 - 12i 12320 </pre> 第一个例子,先是1+1=2。然后是3+3=6,6比3大,我们得减4借1。接着是0+0=0。然后是1+1=2,在减去借的1。得1。 第二个例子,先是3+1=4; 4 比3大,我们得减4借1。然后是2+0=2。 接着是0+0=0,再减去借位1,得-1,小于0,我们得加四进一。 然后是1+1=2; 最后是进位1。我们得到结果<math>12320_{2i}</math>。 ===示例:减法=== 减法和加法类似。下面是例子: <pre> - 2 - 8i 1102 1 - 6i 1011 ------- - <=> ----- - - 3 - 2i 1131 </pre> 这个例子中,先是2-1 = 1。 然后是0-1=-1,小于0,加4进1得3;接着是1-0=1。然后是1-1=0,加上进位得1。 结果就是 <math>1131_{2i}</math>。 ==乘法== 乘法也要用到上面两点。先逐位相乘,然后叠加。比如: 11201 20121 x -------- 11201 <--- 1 x 11201 12002 <--- 2 x 11201 11201 <--- 1 x 11201 00000 <--- 0 x 11201 12002 + <--- 2 x 11201 ------------ 120231321 也就是 <math>(9-8i)\cdot(29+4i) = 293-196i</math>。 ==查-{表}-转换== 下面是一个常用的[[复数 (数学)|复数]]对照表。我们可以用叠加的方法来转换复数 {{col-begin}} {{col-break}} {| class="wikitable" style="text-align:right" |- !十进制!!2''i''进制 |- |1||'' ''1 <!-- Note: '' '' required for proper vertical spacing --> |- |2||'' ''2 |- |3||'' ''3 |- |4||'' ''10300 |- |5||'' ''10301 |- |6||'' ''10302 |- |7||'' ''10303 |- |8||'' ''10200 |- |9||'' ''10201 |- |10||'' ''10202 |- |11||'' ''10203 |- |12||'' ''10100 |- |13||'' ''10101 |- |14||'' ''10102 |- |15||'' ''10103 |- |16||'' ''10000 |} {{col-break}} {| class="wikitable" style="text-align:right" |- !十进制!!2''i''进制 |- |−1||'' ''103 |- |−2||'' ''102 |- |−3||'' ''101 |- |−4||'' ''100 |- |−5||'' ''203 |- |−6||'' ''202 |- |−7||'' ''201 |- |−8||'' ''200 |- |−9||'' ''303 |- |−10||'' ''302 |- |−11||'' ''301 |- |−12||'' ''300 |- |−13||'' ''1030003 |- |−14||'' ''1030002 |- |−15||'' ''1030001 |- |−16||'' ''1030000 |} {{col-break}} {| class="wikitable" style="text-align:right" |- !十进制!!2''i''进制 |- |1''i''||10.2 |- |2''i''||10.0 |- |3''i''||20.2 |- |4''i''||20.0 |- |5''i''||30.2 |- |6''i''||30.0 |- |7''i''||103000.2 |- |8''i''||103000.0 |- |9''i''||103010.2 |- |10''i''||103010.0 |- |11''i''||103020.2 |- |12''i''||103020.0 |- |13''i''||103030.2 |- |14''i''||103030.0 |- |15''i''||102000.2 |- |16''i''||102000.0 |} {{col-break}} {| class="wikitable" style="text-align:right" |- !十进制!!2''i''进制 |- |−1''i''||0.2 |- |−2''i''||1030.0 |- |−3''i''||1030.2 |- |−4''i''||1020.0 |- |−5''i''||1020.2 |- |−6''i''||1010.0 |- |−7''i''||1010.2 |- |−8''i''||1000.0 |- |−9''i''||1000.2 |- |−10''i''||2030.0 |- |−11''i''||2030.2 |- |−12''i''||2020.0 |- |−13''i''||2020.2 |- |−14''i''||2010.0 |- |−15''i''||2010.2 |- |−16''i''||2000.0 |} {{col-end}} ==示例== :<math>5 = 16 + (3\cdot-4) + 1 = 10301_{2i}</math> :<math>i = 2i + 2\left(-\frac{1}{2}i\right) = 10.2_{2i}</math> :<math>7 \frac{3}{4} - 7 \frac{1}{2}i = 1(16) + 1(-8i) + 2(-4) + 1(2i) + 3\left(-\frac{1}{2}i\right) + 1\left(-\frac{1}{4}\right) = 11210.31_{2i}</math> ==参见== * [[四進制]] * [[十六進制]] * {{link-en|複進制|Complex base systems}} * {{link-en|负进制|Negative base}} ==参考资料== *D. Knuth. ''The Art of Computer Programming''. Volume 2, 3rd Edition. Addison-Wesley. pp. 205, "Positional Number Systems" <references/> {{Pns}} {{高德納}} [[Category:进位制]] [[Category:高德纳]] [[Category:非标准进制系统]]
该页面使用的模板:
Template:Caption
(
查看源代码
)
Template:Cite journal
(
查看源代码
)
Template:Col-begin
(
查看源代码
)
Template:Col-break
(
查看源代码
)
Template:Col-end
(
查看源代码
)
Template:Link-en
(
查看源代码
)
Template:Math
(
查看源代码
)
Template:Overline
(
查看源代码
)
Template:Pns
(
查看源代码
)
Template:進制
(
查看源代码
)
Template:高德納
(
查看源代码
)
返回
2i進制
。
导航菜单
个人工具
登录
命名空间
页面
讨论
不转换
查看
阅读
查看源代码
查看历史
更多
搜索
导航
首页
最近更改
随机页面
MediaWiki帮助
特殊页面
工具
链入页面
相关更改
页面信息