Minggu, 31 Maret 2013

Arsitektur komputer - Gray Code


SEKILAS TENTANG GRAY CODE

Gray-code atau juga dikenal dengan reflected binary code  adalah sistem penomoran biner dimana dua nilai yang bersebelahan hanya memiliki tepat satu digit beda. Pada awalnya Gray-code digunakan untuk mencegah keluaran yang palsu dari suatu sinyal elektromekanik. Dewasa ini, Gray-code digunakan secara luas untuk memfasilitasi koreksi galat pada komunikasi digital.

Pada awalnya Frank Gray memperkenalkan reflected binary code dalam paten aplikasinya tahun 1947. Dia memberikan nama berawal dari fakta bahwa kode ini “mungkin dibentuk dari kode biner yang konvesional dengan urutan proses yang terbalik”. Kode ini diberi nama Gray-code oleh orang lain yang kemudian menggunakannya. Sebelumnya Gray-code diaplikasikan pada teka-teki matematika sebelum dikenalkan pada engineer.

Gray-code yang merupakan nama lain yang biasa dianalogikan sebagai binary-reflected Gray-code yang sebelumnya hanya diaplikasikan pada teka-teki matematika seperti pada masalah Hanoi Tower dan Hamiltonian cycle pada hypercube, telah berkembang dalam berbagai bidang.. Pada umumnya Gray-code digunakan sebagai pendeteksi “galat” pada encoding dan decoding karena ia hanya memiliki 1 buah digit beda pada tiap 2 bilangan yang berurut sehingga mudah untuk dideteksi. Gray code juga bisa digunakan untuk memberi label pada sumbu pada Karnaugh Maps. Ketika digunakan pada komputer bahkan Gray code bisa digunakan untuk pengalamatan memori program, dimana komputer akan menggunakan sedikit energi karena lebih sedikit address line yang berubah saat program counter berjalan.

::dari berbagai sumber

Sabtu, 30 Maret 2013

Rekayasa Perangkat Lunak


Software Engineering :
Ilmu yang mempelajari tentang teknik pembuatan software yang baik dengan pendekatan teknik (Engineering ap­proach)
Software mempunyai peran rangkap yaiktu :

  1. software sebagai produk : mentransformasikan informasi
  2. Software juga sebagai kendaraan yang mengantar produk.
Software juga sebagai kendaraan yang mengantar produk yaitu :
  • Kontrol Program Lain
     Sistem Operasi
  • Efek Komunikasi
     Software Networking
  • Membantu mengembangkan software lain
     Software Tools & Enviroments
Software dikembangkan tidak seperti manufacterure, karena software memiliki hak cipta dan kerjasama tim.

  Siklus Hidup Software Engineering 
  1. Requirements ( Kebutuhan )
         Kebutuhan Pelanggan
  2. Specification ( Spesifikasi )
          Kebutuhan Software 
  3.  Design (Desain)
          Model Software
  4. Code (kode)
           Program
  5. Test (UJI)
           Memastikan
  6. Debug
           Memperbaiki
  7. Maintain
           Siklus Hidup

Dalam membuat softrare yang baik, ada beberapa cara :
1.      Fase Perencanaan (Planning) :
a)      Rencana software
b)      Analisa kebutuhan software
c)      Analisa cost banefit (Salah satu bagian dari studi kelayakan)
2.      Fase Pengembangan (Development) :
a)      Coding
b)      Testing
Macam-macam test program :
i)        Unit test (Test per modul)
ii)      Integreated test (Test penggabungan dari modul-modul yang telah diuji)
iii)    Validated test (Diuji dengan data sebenarnya)
iv)    System test (Test dilakukan dengan lingkungan sebenarnya)
v)      Topdown test (Test gabungan dari atas ke bawah)
vi)    Bottom up test (Test gabungan dari bawah ke atas)
3.      Fase Pemeliharaan (Maintenance) :
Jenis-jenis maintenance
a)      Koreksi (Corection)
b)      Adaptasi (Adaptive)
Software dikembangkan sesuai dengan tuntutan perkembangan jaman



::dari berbagai sumber