이진에서 10 진수 전환은 이진 번호 (즉, 2 자리 0 및 1로 표시되는 숫자)를 해당 소수점 수 (즉,베이스로서 10의 형태)로 변환하는 과정을 말합니다.
이 기사는 다른 방법을 사용하여 PHP에서 숫자의 이진 형태를 10 진수 형태로 변환하는 방법을 설명합니다.
바이너리를 소수로 변환하는 방법은 무엇입니까?
바이너리 숫자 ()는 기계가 사용하는 0 및 1 자리만으로 구성되며 소수점 숫자는 인간이 사용하는 소수점 숫자입니다. 이진수를 10 진수로 변환하려면 각 바이너리 숫자에 위치 전력 (오른쪽에서 0에서 시작)을 곱한 다음 모든 결과를 추가하십시오.
예 1
입력 : 이진 번호 = 101
출력 : 소수점 번호 = 5
<:> 설명 :
이진 번호 101은 십진수로 변환 될 수 있으며,이 방법은 다음과 같습니다.
(1 × 2 2 ) (0 × 2
1 ) (1 × 2
0 )
= 4 0 1 = 5
예제 2
입력 : 이진 번호 = 1111 -
출력 : 소수점 숫자 = 15
<:> 설명 :
이진 번호 1111은 다음과 같이 계산할 수 있습니다.
(1 × 2 3 - ) (1 × 2 2 ) (1 × 2 ) (1 × 2
0 )
= 8 4 2 1 =
15
예제 3
입력 : 이진 번호 = 0
출력 : 소수점 번호 = 0
<:> 설명 :
모든 숫자의 기여 값이 0이기 때문에 이진 번호 0은 10 진수 0에 해당합니다.
다음은 PHP에서 이진에서 10 진수 변환을 수행하는 다른 방법입니다.
내장 함수를 사용하여 이진에서 10 진수 변환
PHP에는 내장 함수 bindec () 가 있으며 이진 숫자는 직접 이진 숫자를 소수점 숫자로 변환하는 데 사용될 수 있습니다.
구현 단계
이진 번호를 입력으로 정의합니다.
bindec () 함수를 사용하여 이진수를 소수 형태로 변환하십시오. -
<.> 출력 결과.
구현 코드
- 출력
시간 복잡성 : o (1)
<: :> 공간 복잡성 :
o (1)
루프를 사용한 소수 변환에서 이진에서 소수 변환
이 방법에서는 왼쪽에서 오른쪽으로 이진을 통과하는 루프를 사용합니다. 우리는 각 바이너리 수에 위치 값을 곱한 결과를 추가하여 소수점을 계산합니다.
구현 단계
먼저, 이진 번호를 문자열 입력으로 정의하십시오.
이제 소수점 결과를 저장하기 위해 변수를 초기화하십시오.
루프를 사용하여 오른쪽에서 왼쪽으로 이진 숫자를 통과하십시오. -
위치의 전력에 의해 각 바이너리 숫자를 2만큼 배수하고 결과에 추가하십시오.
최종 소수점 결과를 출력하십시오. -
구현 코드
-
출력
-
시간 복잡성 :
o (n)
<: :> 공간 복잡성 : - o (1)
비트 연산자 사용
이 방법에서는 PHP에서 지원하는 비트 연산자를 직접 사용하여 비트를 작동합니다. 이 접근법에서는 변위를 사용하여 소수점 등가를 계산합니다.
구현 단계
먼저, 소수점 결과의 변수를 0으로 초기화합니다.
이제 가장 중요한 비트부터 시작하여 이진 문자열을 통해 루프. <code class="language-php"><?php
$binary = "101";
// 使用 bindec() 将二进制转换为十进制
$decimal = bindec($binary);
echo "二进制数 '$binary' 的十进制等效值为:$decimal";
?></code>
각 비트마다 왼쪽 결과를 결과하고 현재 비트의 값을 추가하십시오.
모든 비트를 처리 한 후 최종 결과를 반환합니다. <code>二进制数 '101' 的十进制等效值为:5</code>
구현 코드
출력
시간 복잡성 : o (n)
<: :> 공간 복잡성 :
o (1)
이진을 10 진수로 전환하는 실제 적용
인코딩 또는 디코딩 프로세스의 일부로 바이너리에서 10 진수로 변환하는 많은 프로그래밍 작업을 수행하는 데 사용됩니다.
IP 주소, 서브넷 마스크 및 MAC 주소는 때때로 구성 및 분석을 위해 이진 및 소수 변환이 필요합니다.
위 내용은 이진에서 10 진수 전환을위한 PHP 프로그램의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!