程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> 關於C++ >> 淺談十進制小數和二進制小數之間的轉換

淺談十進制小數和二進制小數之間的轉換

編輯:關於C++

淺談十進制小數和二進制小數之間的轉換。本站提示廣大學習愛好者:(淺談十進制小數和二進制小數之間的轉換)文章只能為提供參考,不一定能成為您想要的結果。以下是淺談十進制小數和二進制小數之間的轉換正文


一、二進制數轉換成十進制數

由二進制數轉換成十進制數的根本做法是,把二進制數首先寫成加權系數展開式,然後按十進制加法規則求和。這種做法稱為"按權相加"法。

二、十進制數轉換為二進制數

十進制數轉換為二進制數時,由於整數和小數的轉換辦法不同,所以先將十進制數的整數局部和小數局部辨別轉換後,再加以兼並。

1. 十進制整數轉換為二進制整數

十進制整數轉換為二進制整數采用"除2取余,逆序陳列"法。詳細做法是:用2去除十進制整數,可以失掉一個商和余數;再用2去除商,又會失掉一個商和余數,如此停止,直到商為零時為止,然後把先失掉的余數作為二進制數的低位無效位,後失掉的余數作為二進制數的高位無效位,順次陳列起來。

2.十進制小數轉換為二進制小數

十進制小數轉換成二進制小數采用"乘2取整,順序陳列"法。詳細做法是:用2乘十進制小數,可以失掉積,將積的整數局部取出,再用2乘余下的小數 局部,又失掉一個積,再將積的整數局部取出,如此停止,直到積中的小數局部為零,或許到達所要求的精度為止。

然後把取出的整數局部按順序陳列起來,先取的整數作為二進制小數的高位無效位,後取的整數作為低位無效位。

例1109 (173.8125)10=( )2

解: 由[例1107]得(173)10=(10101101)2

由[例1108]得(0.8125)10=(0.1101)2

把整數局部和小數局部兼並得: (173.8125)10=(10101101.1101)2

十進制小數→→→→→二進制小數 辦法:“乘2取整”

對十進制小數乘2失掉的整數局部和小數局部,整數局部既是相應的二進制數碼,再用2乘小數局部(之前乘後失掉新的小數局部),又失掉整數和小數局部。

如此不時反復,直到小數局部為0或到達精度要求為止.第一次所失掉為最高位,最後一次失掉為最低位

如:0.25的二進制

0.25*2=0.5 取整是0
0.5*2=1.0    取整是1
即0.25的二進制為 0.01 ( 第一次所失掉為最高位,最後一次失掉為最低位)

0.8125的二進制

0.8125*2=1.625   取整是1

0.625*2=1.25     取整是1

0.25*2=0.5  取整是0

0.5*2=1.0   取整是1

即0.8125的二進制是0.1101(第一次所失掉為最高位,最後一次失掉為最低位)

十進制小數→→→→→八進制小數 辦法:“乘8取整”

0.71875)10 =(0.56)8

0.71875*8=5.75 取整5

0.75*8=6.0 取整6

即0.56

十進制小數→→→→→十六進制小數辦法:“乘16取整”例如:

(0.142578125)10=(0.248)16

0.142578125*16=2.28125 取整2

0.28125*16=4.5     取整4

0.5*16=8.0    取整8

即0.248
 
非十進制數之間的轉換

(1)二進制數與八進制數之間的轉換

轉換辦法是:以小數點為界,辨別向左右每三位二進制數分解一位八進制數,或每一位八進制數展成三位二進制數,缺乏三位者補0。例如:

(423。45)8=(100 010 011.100 101)2

(1001001.1101)2=(001 001 001.110 100)2=(111.64)8

(2)二進制與十六進制轉換

轉換辦法:以小數點為界,辨別向左右每四位二進制分解一位十六進制數,或每一位十六進制數展成四位二進制數,缺乏四位者補0。例如:

(ABCD.EF)16=(1010 1011 1100 1101.1110 1111)2

(101101101001011.01101)2=(0101 1011 0100 1011.0110 1000)2=(5B4B.68)16

可以把二進制造為兩頭的過渡運用。

以上這篇淺談十進制小數和二進制小數之間的轉換就是分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved