ホームページ バックエンド開発 PHPの問題 PHPで10進数を2進数に変換する方法

PHPで10進数を2進数に変換する方法

Apr 25, 2023 pm 06:28 PM

コンピューター サイエンスでは、2 進数は数値を表す最も基本的な方法であり、コンピューターで使用される数値体系でもあります。 10 進数を 2 進数に変換することは、コンピューター サイエンスにおける一般的な問題です。 PHP は人気のあるサーバーサイド スクリプト言語であり、10 進数を 2 進数に変換する組み込み関数もいくつか提供しています。この記事では、PHPを使用して10進数を2進数に変換する方法を紹介します。

1. PHP 組み込み関数を使用する

PHP には、10 進数を 2 進数に変換するための組み込み関数 decbin() が用意されています。

以下は、decbin() 関数を使用して 10 進数を 2 進数に変換するサンプル コードです:

$decimal_number = 15;
$binary_number = decbin($decimal_number);

echo "十进制数 " . $decimal_number . " 转换为二进制数是:" . $binary_number;
ログイン後にコピー

上記のコードを実行すると、次の結果が出力されます:

十进制数 15 转换为二进制数是:1111
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

上記の例 サンプル コードでは、まず変数 $decmal_number に 10 進数の 15 を代入します。次に、$decmal_number を PHP の組み込み関数 decbin() に渡します。 decbin() 関数は、$decmal_number を 2 進数に変換し、結果を変数 $binary_number に保存します。

最後に、$binary_number の値を画面に出力します。上記の手順を組み合わせると、10 進数 15 を 2 進数 1111 に変換することができました。

2. 手動計算方法

PHP の組み込み関数を使用する以外に、10 進数を 2 進数に手動で変換することもできます。 2 進数を手動で計算する方法は、結果が 0 になるまで 10 進数を 2 で割り続けることです。各除算演算では、剰余を記録し、その剰余を逆の順序で並べて 10 進数の 2 進数表現を取得する必要があります。

以下は、10 進数と 2 進数を手動で計算するためのサンプル コードです:

$decimal_number = 15;
$binary_number = "";

while($decimal_number>0){
  $reminder = $decimal_number%2;
  $binary_number .= $reminder;
  $decimal_number = $decimal_number/2;
}

$binary_number = strrev($binary_number);

echo "十进制数 " . $decimal_number . " 转换为二进制数是:" . $binary_number;
ログイン後にコピー

上記のサンプル コードでは、まず 10 進数 15 を変数 $decmal_number に割り当てます。次に、while ループを使用して 10 進数を 2 進数に変換します。

各反復では、$decmal_number を 2 で除算し、剰余を変数 $reminder に格納します。次に、$reminder の値を変数 $binary_number の末尾に追加します。

最後に、PHP 組み込み関数 strrev() を使用して $binary_number を反転し、変数 $binary_number に代入します。

上記のコードを実行すると、次の結果が得られます:

十进制数 15 转换为二进制数是:1111
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

3. 配列を使用して手動計算方法での数値順序の問題を解決します

手動計算のプロセス中2 進数の計算では、正しい 2 進数を得るために余りを逆順に並べる必要があります。 PHP では、配列を使用することでこの問題を解決できます。

以下は、配列を使用して余りを逆順に並べ替えて 10 進数を 2 進数に変換するサンプル コードです。

$decimal_number = 15;
$binary_number = [];

while($decimal_number>0){
  $reminder = $decimal_number%2;
  array_push($binary_number,$reminder);
  $decimal_number = $decimal_number/2;
}

$binary_number = array_reverse($binary_number);
$binary_number = implode($binary_number);

echo "十进制数 " . $decimal_number . " 转换为二进制数是:" . $binary_number;
ログイン後にコピー

上記のサンプル コードでは、まず、 10 進数の 15 を変数 $decmal_number に代入します。次に、while ループを使用して 10 進数を 2 進数に変換します。

各反復では、$decmal_number を 2 で除算し、その余りを配列 $binary_number に格納します。次に、PHP 組み込み関数 array_reverse() を使用して、$binary_number 配列を逆順に並べ替えます。最後に、implode() 関数を使用して $binary_number 配列を文字列に変換します。

上記のコードを実行すると、次の結果が得られます:

十进制数 15 转换为二进制数是:1111
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

概要:

この記事では、PHP で 10 進数を 2 進数に変換する方法を紹介します。 PHP の組み込み関数 decbin() を使用して、10 進数を 2 進数に変換できます。さらに、手動で 2 進数を計算し、余りを逆順に並べて数値順序の問題を解決したり、配列を使用して余りを格納し、それを逆順に並べて正しい 2 進数を取得したりすることもできます。もちろん、最も簡単な方法は、PHP の組み込み関数 decbin() 関数を使用することです。

以上がPHPで10進数を2進数に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)