메뉴 바로가기

서브메뉴 바로가기

본문 바로가기

logo

C/C++/MFC

소수점(float,double) 있는 십진수를 이진수로 변환

 

 

십진수가 소수점 이상일 경우에는 2로 나누어서 계산하고

십진수가 소수점 이하일 경우에는 2를 곱하여 계산하면 됩니다.

 

예를 들어, 0.625를 이진수로 변환한다면

0.625 에 2를 곱하면 1.25, 여기서 소수점 위의 수 즉, 1을 오른쪽으로 뺍니다…………1

0.25 에 2를 곱하면 0.5, 여기서 소수점 위의 수 즉, 0을 오른쪽으로 뺍니다…………0

0.5 에 2를 곱하면 1.0, 여기서 소수점 위의 수 즉, 1을 오른쪽으로 뺍니다…………1

0 이 나옵니다.

우측에 나열된 숫자를 위에서 아래로 읽어 주면 됩니다.

101 <- 이진수로 101 가 됩니다.

 

 

 

 

소수점 있는 십진수를 이진수로 출력하는 소스입니다.

 

 

#include "stdafx.h"

 

int _tmain(int argc, _TCHAR* argv[])

{

    double dValue = 0.625;

    printf("INPUT: %f\r\n", dValue);

 

    printf("OUTPUT:");

    while (0 != dValue)

    {

        dValue = dValue*2;

 

        printf("%d",(int)dValue);

        if(dValue >=1)

        {

            dValue = dValue -1;

        }

 

    }

    

    printf("\r\n",(int)dValue);

 

    return 0;

}

 

 

 

 

 

실행 결과

 

 

 

관련 문서가 검색되었습니다.
  1. [2015/04/22] 시리얼통신 소스 코드입니다. 0.2 by WhiteAT (11759) *2
  2. [2015/03/13] 시리얼통신 소스 코드입니다. 0.1 by WhiteAT (9420)
  3. [2013/12/30] C++, C# 간단한 기능 비교 by WhiteAT (12883)
  4. [2011/10/27] WAT-AVR128 모듈 by WhiteAT (5534)
  5. [2013/06/20] 5명의 키를 읽어 들여 가장 큰 키와 작은 키를 구하는 프로그램을 작성하시오 by Question (12064) *1
  6. [2013/06/20] 배열 문제인데요 ㅠㅠ by Question (10800) *1
  7. [2013/05/30] WAT-AVR128, OUTPUT 실험 by WhiteAT (6792)
  8. [2013/05/29] 도구바, OrCAD Capture by WhiteAT (4184)
  9. [2013/05/10] C언어 문제좀 풀어주세요~ by Question (7510) *1
  10. [2013/04/25] AVR ATmega 128로 인터럽트를 이용한 LED를 점멸하는 방법 좀 알려주세요. by Question (11403) *3