[PHP] Konversi biner ke ASCII dan sebaliknya
24 04 2009Malam-malam iseng buka situs kaskus, disitu ada yang memposting yang isi nya tulisan biner saja. Penasaran ingin tahu apa isi nya, saya buat saja program nya (walaupun sudah banyak website konversi seperti ini). Ga beberapa lama kemudian, program konversinya selesai saya kerjakan.
Program sederhana, tetapi sangat penting. Karena biner adalah salah satu kewajiban yang harus di kuasai seorang mahasiswa, atau siapa saja yang sedang mempelajari dasar-dasar komputerisasi. Tabel hexa untuk kode ascii bisa di lihat di sini.
Test program ada disini : http://krisnanda.web.id/konversi/
Dan berikut ini adalah script program nya:
/*
PROGRAM CONVERTER BINER TO ASCII AND ASCII TO BINER
BY: Andry Krisnanda (AINEISME)
*/
class converter{
var $input = ”;
function getinput($str){
$this->input = $str;
}
function getArray($param){
return split($param,$this->input);
}
function ascii(){
$n_arr = $this->getArray(" ");
for($i=0;$i<count($n_arr);$i++){
$bin = trim($n_arr[$i]);
$j = 0;
$nil_des = 0;
for ($I=(strlen($bin)-1);$I>=0;$I–){
$nil_pow = pow(2,$j);
$des = $nil_pow * $bin[$I];
$nil_des = $nil_des + $des;
$j++;
}
$charakter .= chr($nil_des);
}
$this->sayit("ASCII = $charakter <br/>");
}
function biner(){
for ($I=0;$I<=(strlen(trim($this->input)));$I++){
$ord_bin = ord($this->input[$I]);
$ord_master = $ord_bin;
$ord_biner = ”;
$B = 0;
while ($ord_bin != 0){
$ord_bin = $ord_bin / 2;
if ($ord_bin == 0.5) {
$ord_biner = $ord_biner . " 0";
$ord_bin = 0;
}else{
$ord_bin = round($ord_bin);
$ord_biner = $ord_biner . " ".$ord_bin;
}
$B++;
}
$B = $B – 1;
$e = 0;
$bbb = ”;
$eplus = 0;
for ($BI=$B;$BI>=0;$BI–){
$e = pow(2,$BI);
$eplus = $eplus + $e;
if ($eplus > $ord_master){
$bbb .= 0;
$e += 0;
$eplus = $eplus – $e;
}else{
$bbb .= 1;
$e += $e;
}
}
$output = $output." ".$bbb;
}
$this->sayit("Biner: $output");
}
function sayit($str){
echo $str;
}
}
?>
<title>CHAR CONVERTER</title>
<br/>
<form action="<?=$_SERVER[PHP_SELF];?>" method=POST>
<table width=100%>
<tr valign=top>
<td width=5%> Input : </td>
<td> <input type=text name=inputan size=100 value="<?=$_POST[inputan];?>"> </td>
</tr>
<tr valign=top>
<td> Pilihan : </td>
<td>
<input type=radio name=pilihan value="ascii" <?php if ($_POST[pilihan] == ‘ascii’){ echo "checked"; }else{ echo ""; } ?> >ASCII <br/>
<input type=radio name=pilihan value="biner" <?php if ($_POST[pilihan] == ‘biner’){ echo "checked"; }else{ echo ""; } ?> >Biner <br/>
</td>
</tr>
</table>
<input type=submit name=proses value=proses>
<hr/>
<?php
if (!isset($_POST[proses])){
exit();
}
$conv = new converter;
$conv->getinput($_POST[inputan]);
if ($_POST[pilihan] == ‘biner’){
$conv->biner();
}else if ($_POST[pilihan] == ‘ascii’){
$conv->ascii();
}
else{
$conv->sayit("Silahkan pilih dulu pilihan yang ada.");
}
?>
Untuk menjalankan program silahkan klik link ini: http://krisnanda.web.id/konversi
Terima kasih.
- Belajar PHP untuk pemula Nyang pengen belajar php.. dari awal… dari tingkat pemula… mari...
- [PHP] Mendapatkan tanggal lampau Banyak jalan menuju Roma, (ciaelah..) begitu juga dalam scripting program.....











Recent Comments