Senin, 14 Januari 2013

Konversi [Komunikasi Data]



Laporan Komunkasi Data
 
 



PEMROGRAMAN
Konversi

Disusun oleh:
Ati Tasmiati Dewi
11520244043
G

PENDIDIKAN TEKNIK INFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS NEGERI YOGYAKARTA
I.                  JUDUL
Konversi bilangan

II.               TUJUAN PRAKTIKUM
1.     Mahasiswa mampu membuat program untuk mengkonversikan suatu kata jika kata tersebut dikirimkan
2.      Mahasiswa mampu memahami program
3.      Mahasiswa mengetahui hasil dari konversi program tersebut

III.            DASAR TEORI
Kode Standar Amerika untuk Pertukaran Informasi atau ASCII (American Standard Code for Information Interchange) merupakan suatu standar internasional dalam kode huruf dan simbol seperti Hex dan Unicode tetapi ASCII lebih bersifat universal, contohnya 124 adalah untuk karakter “|”. Ia selalu digunakan oleh komputer dan alat komunikasi lain untuk menunjukkan teks. Kode ASCII sebenarnya memiliki komposisi bilangan biner sebanyak 8 bit. Dimulai dari 0000 0000 hingga 1111 1111. Total kombinasi yang dihasilkan sebanyak 256, dimulai dari kode 0 hingga 255 dalam sistem bilangan Desimal. Adapun tujuan dari pembuatan paper ini adalah agar bisa memahami cara mengkonversi bilangan ASCII baik dari hexa ke decimal ke biner maupun sebaliknya dan diharapkan nantinya bisa memberikan manfaat bagi kita.
Sekarang ini kemajuan teknologi berkembang begitu cepat di berbagai belahan dunia. Dan manusia pun sangat membutuhkan semua informasi dengan cepat, segala macam akses, transportasi, begitu juga komunikasi yang sangat mudah dan cepat diterima oleh masyarakat. Kode Standar Amerika untuk Pertukaran Informasi atau ASCII (American Standard Code for Information Interchange) merupakan suatu standar internasional dalam kode huruf dan simbol seperti Hex dan Unicode tetapi ASCII lebih bersifat universal. ASCII yang ditetapkan tahun 1968 ini berbasis bilangan Hexadecimal atau 16-an dan dimaksudkan untuk menstandarkan transmisi data pada hardware dan software yang digunakan pada personal computer (PC). Ia berisi 256 karakter yang mewakili semua karakter yang digunakan pada PC. Bila bilangan biner atau digital hanya mempunyai dua nilai, 0 dan 1 dan bilangan desimal mempunyai interval nilai antara 0 sampai dengan 9; maka bilangan heksadesimal mempunyai jangkauan 16 nilai mulai 0 hingga F yang menggantikan nilai ke-15.
ASCII singkatan dari American Standard Kode untuk Informasi Interchange. Komputer hanya dapat memahami nomor, maka kode ASCII adalah representasi numerik dari karakter seperti ‘a’ atau ‘@’. ASCII dikembangkan lama dan sekarang non-cetak karakter yang jarang digunakan untuk tujuan aslinya. Berikut ini adalah tabel karakter ASCII dan ini termasuk deskripsi dari 32 karakter pertama non-cetak. ASCII sebenarnya dirancang untuk digunakan dengan teletypes dan deskripsi agak kabur. Jika seseorang mengatakan mereka ingin Anda CV Namun dalam format ASCII, semua ini berarti mereka ingin ‘plain’ teks tanpa format seperti tab, tebal atau menggarisbawahi – format baku bahwa setiap komputer dapat memahami. Hal ini biasanya sehingga mereka dapat dengan mudah mengimpor file ke dalam aplikasi mereka sendiri tanpa masalah. Notepad.exe menciptakan teks ASCII, atau di MS Word Anda dapat menyimpan file ‘teks saja’. Setiap kode ASCII itulah yang kemudian akan dikonfersi kebilangan biner sehingga terbentuk bit-bit yang terdiri dari bit ‘0’ dan bit ‘1’. Bit inilah yang akan dikirimkan dan pada penerima akan dikodekan kembali. Kemudian bit-bit tadi yang dikirimkan dan akan dikodekan kembali kedalam teks aslinya. Proses inilah yang dinamakan decoding. Misalnya kita ingin mengirimkan pesan “kirim”. Maka setiap huruf yaitu k,i,r,i,m akan dikodekan menjadi biner. Kode ASCII untuk setiap huruf : - k = 107 = 01101011 (yang dikirim pertama) - i = 105 = 01101001 - r = 114 = 01110010 - i = 105 = 01101001 - m = 109 = 01101101 (yang dikirim terakhir) Kemudian bit-bit tadi yang dikirimkan dan akan dikodekan kembali kedalam teks aslinya. Asumsikan pengiriman tanpa gangguan. Maka, pada penerima akan diterima kode-kode bit 01101101 01101001 01110010 01101001 01101011 Kemudian kode-kode bit itu akan diterjemahkan dengan memisah menjadi 8 bit. 01101101 = 109 = m (yang diterima terakhir) 01101001 = 105 = i 01110010 = 114 = r 01101001 = 105 = i 01101011 = 107 = k (yang diterima pertama) Maka diterjemahkan bahwa pesannya adalah kata “kirim” . Beberapa contoh kode ASCII:


IV.            PROGRAM KONVERSI
            //Tugas praktek komunikasi data
/*
 Nama   : Ati Tasmiati Dewi
 Nim       : 11520244043
*/
///////////////////////////////////////////////////////////////////////////////
import java.util.Scanner;
class konversi {//kelas konversi memiliki beberapa data
                int ascii;//Mendeklarasikan nilai ascii bertipe integer
                int ASCII = 0;
                int bcs = 0;
       
                String data = "";//Mendeklarasikan nilai data bertipe String
                String BCS = "";//Mendeklarasikan nilai BCS bertipe String
                String DATA = "";//Mendeklarasikan nilai DATA bertipe String
///////////////////////////////////////////////////////////////////////////////
                public int A2I(char huruf) {
                                ascii = (int) huruf;
                                return ascii;
                }
///////////////////////////////////////////////////////////////////////////////
                public String I2B() {//method
                                String biner;
                                if (ascii >= 128){
            biner = Integer.toBinaryString(ascii);
            data = data+biner;
            return biner;
        }
        else if (ascii >= 64) {
            biner = Integer.toBinaryString(ascii);
            String biner2 = "0" + biner;
            data = data+biner2;
            return biner2;
        }
        else if (ascii >= 32) {
                biner = Integer.toBinaryString(ascii);
            String biner3 = "00" + biner;
            data = data+biner3;
            return biner3;
        }
        else if (ascii >= 16) {
                biner = Integer.toBinaryString(ascii);
            String biner4 = "000" + biner;
            data = data+biner4;
            return biner4;
        }
        else if (ascii >= 8) {
                biner = Integer.toBinaryString(ascii);
            String biner5 = "0000" + biner;
            data = data+biner5;
            return biner5;
        }
        else if (ascii >= 4) {
                biner = Integer.toBinaryString(ascii);
            String biner6 = "00000" + biner;
            data = data+biner6;
            return biner6;
        }
        else if (ascii >= 2) {
                biner = Integer.toBinaryString(ascii);
            String biner7 = "000000" + biner;
            data = data+biner7;
            return biner7;
        }
        else
        {
                biner = Integer.toBinaryString(ascii);
            String biner8 = "0000000" + biner;
            data = data+biner8;
            return biner8;
        }
                }


///////////////////////////////////////////////////////////////////////////////
                public int error() {
                                bcs = (ascii ^ bcs);
                                return bcs;
                }
///////////////////////////////////////////////////////////////////////////////
                public String B2B() {
                                String bnr;
                                error();
                                if (bcs >= 128){
            bnr = Integer.toBinaryString(bcs);
            BCS = bnr;
            return (bnr);
        }
        else if (bcs >= 64) {
            bnr = Integer.toBinaryString(bcs);
            String bnr2 = "0" + bnr;
            BCS = bnr2;
            return (bnr2);
        }
        else if (bcs >= 32){
                bnr = Integer.toBinaryString(bcs);
            String bnr3 = "00" + bnr;
            BCS = bnr3;
            return (bnr3);
        }
        else if (bcs >= 16){
                bnr = Integer.toBinaryString(bcs);
            String bnr4 = "000" + bnr;
            BCS = bnr4;
            return (bnr4);
        }
        else if (bcs >= 8){
                bnr = Integer.toBinaryString(bcs);
            String bnr5 = "0000" + bnr;
            BCS = bnr5;
            return (bnr5);
        }
        else if (bcs >= 4){
                bnr = Integer.toBinaryString(bcs);
            String bnr6 = "00000" + bnr;
            BCS = bnr6;
            return (bnr6);
        }
        else if (bcs >= 2){
                bnr = Integer.toBinaryString(bcs);
            String bnr7 = "000000" + bnr;
            BCS = bnr7;
            return (bnr7);
        }
        else
        {
                bnr = Integer.toBinaryString(bcs);
            String bnr8 = "0000000" + bnr;
            BCS = bnr8;
            return (bnr8);
        }
            } 
}
///////////////////////////////////////////////////////////////////////////////
public class Komdat_11520244043 {
                public static void main( String args[]) {
                                Scanner baca = new Scanner(System.in);
                                konversi kv = new konversi();
                                String huruf;
                               
                                System.out.println(" =================== ");            
                                System.out.print(" Inputkan Kata ==> ");
                                huruf = baca.nextLine();
                                System.out.println();
                               
                                char[] kar = huruf.toCharArray();
        System.out.println(" ================== ");      
        System.out.print(" Data dikirim  ---> "+huruf);//menampilkan kata yang dikirimkan
        System.out.println(" ");
        System.out.print(" Binary        ---> ");//menampilkan data yang dikirimkan dan telah di konversi ke binary
                                for (int i=0; i<kar.length; i++) {
                                                kv.A2I(kar[i]);
                                                System.out.printf(kv.I2B());
                                }
        System.out.println(" ");
        System.out.print(" Check Parity  ---> ");//menunjukkan parity check
                                for (int i=0; i<kar.length; i++) {
                                                kv.A2I(kar[i]);
                                                String kata=kv.I2B();
                                                String hrf;
                                                for(int a=0;a<kata.length();a++){
                                                                hrf= kata.substring(a,a+1);
                                                                if(hrf.equals("0")){
                                                                                System.out.print(" 1 ");
                                                                }else{
                                                                                System.out.print(" 0 ");
                                                                }
                                                }
                                }
        System.out.println("");
        System.out.print(" Data Diterima ---> " );
                                for (int i=0; i<kar.length; i++) {
                                                kv.A2I(kar[i]);
                                                System.out.printf(kv.I2B());
                                }
        System.out.println(" ");
        System.out.println(" Data Diterima ---> "+huruf);//data akan diterima setelah di konversi
                System.out.println(" ================== ");                              
                }
}//End
///////////////////////////////////////////////////////////////////////////////


V.                KESIMPULAN
                ketika pengiriman suatu kata atau huruf dilakukan, maka akan di konversikan kedalam bentuk binary oleh program.
Sebelum diterima oleh penerima, kata tersebut akan di cek oleh parity check satu per satu kode binary agar penerimaan data sesuai dengan data yang dikirimkan.

VI.            DAFTAR PUSTAKA