Minggu, 27 November 2011

TEKNIK ENCODING


Modulasi adalah proses encoding sumber data dalam suatu sinyal carrier dengan frekuensi fc.
Macam – macam teknik encoding :
• Data digital, sinyal digital
• Data analog, sinyal digital
• Data digital, sinyal analog
• Data analog, sinyal analog
DATA DIGITAL, SINYAL DIGITAL
Sinyal digital adalah sinyal diskrit dengan pulsa tegangan diskontinyu. Tiap pulsa adalah elemen sinyal data biner diubah menjadi elemen – elemen sinyal.
Spektrum sinyal : disain sinyal yang bagus harus mengkonsentrasikan kekuatan transmisinya pada daerah tengah dari bandwidth transmisi; untuk mengatasi distorsi dalam penerimaan sinyal digunakan disain kode yang sesuai dengan bentuk dari spektrum sinyal transmisi.
Elemen sinyal adalah tiap pulsa dari sinyal digital. Data binary ditransmisikan dengan meng-encoder-kan tiap bit data menjadi elemen-elemen sinyal.
Ketentuan :
• Unipolar: Semua elemen-elemen sinyal dalam bentuk yang sama yaitu positif semua atau negatif semua.
• Polar :adalah elemen-elemen sinyal dimana salah satu state logic dinyatakan oleh level tegangan positif dan sebaliknya oleh tegangan negatif
• Rating Data : Rating data transmisi data dalam bit per secon
• Durasi atau panjang suatu bit: Waktu yang dibutuhkan pemancar untuk memancarkan bit
• Rating modulasi
• Rating dimana level sinyal berubah
• Diukur dalam bentuk baud=elemen-elemen sinyal per detik
• Tanda dan ruang
• Biner 1 dan biner 0 berturut-turut
• Modulation rate adalah kecepatan dimana level sinyal berubah, dinyatakan dalam bauds atau elemen sinyal per detik.
• Istilah mark dan space menyatakan digit binary ’1′ dan ’0′.
Tugas-tugas receiver dalam mengartikan sinyal-sinyal digital:
• receiver harus mengetahui timing dari tiap bit
• receiver harus menentukan apakah level sinyal dalam posisi bit high(1) atau low(0).
Tugas-tugas ini dilaksanakan dengan men-sampling tiap posisi bit pada tengah-tengah interval dan membandingkan nilainya dengan threshold.
Faktor yang menentukan sukses dari receiver dalam mengartikan sinyal yang datang :
• Data rate (kecepatan data) : peningkatan data rate akan meningkatkan bit error
rate (kecepatan error dari bit).
• S/N : peningkatan S/N akan menurunkan bit error rate.
• Bandwidth : peningkatan bandwidth dapat meningkatkan data rate.
Lima faktor yang perlu dinilai atau dibandingkan dari berbagai teknik komunikasi :
• Spektrum sinyal : disain sinyal yang bagus harus mengkonsentrasikan kekuatan transmisinya pada daerah tengah dari bandwidth transmisi; untuk mengatasi distorsi dalam penerimaan sinyal digunakan disain kode yang sesuai dengan bentuk dari spektrum sinyal transmisi.
• Clocking : menentukan awal dan akhir dari tiap posisi bit dengan mekanisme synchronisasi yang berdasarkan pada sinyal transmisi.
• Deteksi error : dibentuk dalam skema fisik encoding sinyal.
• Interferensi sinyal dan Kekebalan terhadap noise
• Biaya dan kesulitan : semakin tinggi kecepatan pensinyalan untuk memenuhi data rate yang ada, semakin besar biayanya.
Perlu diketahui
• Waktu bit saat mulai dan berakhirnya
• Level sinyal
Faktor-faktor penerjemahan sinyal yang sukses
• Perbandingan sinyal dengan noise(gangguan)
• Rating data
• Bandwidth
Perbandingan Pola-Pola Encoding
• Spektrum sinyal
Kekurangan pada frekuensi tinggi mengurangi bandwidth yang dibutuhkan. Kekurangan pada komponen dc menyebabkan kopling ac melalui trafo menimbulkan isolasi Pusatkan kekuatan sinyal di tengah bandwidth
• Clocking
• Sinkronisasi transmiter dan receiver
• Clock eksternal
• Mekanisme sinkronisasi berdasarkan sinyal
• Pendeteksian error
• Dapat dibangun untuk encoding sinyal
• Interferensi sinyal dan kekebalan terhadap noise
• Beberapa code lebih baik daripada yang lain
• Harga dan Kerumitan
• Rating sinyal yang lebih tinggi(seperti kecepatan data) menyebabkan harga semakin tinggi
• Beberapa code membutuhkan rating sinyal lebih tinggi
Pola –Pola encoding
• Nonreturn to Zero-Level (NRZ-L)
• Nonreturn to Zero Inverted (NRZI)
• Bipolar-AMI
• Pseudoternary
• Manchester
• Differential Manchester
• B8ZS
• HDB3
Pengertian dari Format-Format sinyal encoding adalah sebagai berikut :


Nonreturn to Zero Inverted (NRZI):yaitu suatu kode dimana suatu transisi (low ke high atau high ke low) pada awal suatu bit time akan dikenal sebagai binary ’1′ untuk bit time tersebut; tidak ada transisi berarti binary ’0′. Sehingga NRZI merupakan salah satu contoh dari differensial encoding.
• Nonreturn to Zero Inverted (NRZI) dalam kesatuan
• Pulsa tegangan konstan untuk durasi bit
• Data dikodekan / diterjemahkan sebagai kehadiran(ada) atau ketiadaan sinyal transisi saat permulaan bit time
• Transisi (dari rendah ke tinggi atau tinggi ke rendah) merupakan biner 1
• Tidak ada transisi untuk biner 0
• Sebagai contoh encoding differential
Keuntungan differensial encoding :
• lebih kebal noise
• tidak dipengaruhi oleh level tegangan.
Kelemahan dari NRZ-L maupun NRZI :
• keterbatasan dalam komponen dc dan kemampuan synchronisasi yang buruk
NRZ


Bipolar with 8-Zeros Substitution (B8ZS) yaitu suatu kode dimana :
• jika terjadi oktaf dari semua nol dan pulsa tegangan terakhir yang mendahului oktaf ini adalah positif, maka 8 nol dari oktaf tersebut di-encode sebagai 000+ -0-
• jika terjadi oktaf dari semua nol dan pulsa tegangan terakhir yang mendahului oktaf ini adalah negatif, maka 8 nol dari oktaf tersebut di-encode sebagai 000-+0+ -.
High-density bipolar-3 zeros (HDB3): yaitu suatu kode dimana menggantikan stringstring dari 4 nol dengan rangkaian yang mengandung satu atau dua pulsa atau disebut kode violation, jika violation terakhir positive maka violation ini pasti negative dan sebaliknya.

Sumber : http://caplax.adeblink.net/teknik-encoding

Instruction Set



Set Instruksi (bahasa InggrisInstruction Set, atau Instruction Set Architecture (ISA)) didefinisikan sebagai suatu aspek dalam arsitektur komputer yang dapat dilihat oleh para pemrogram. Secara umum, ISA ini mencakup jenis data yang didukung, jenis instruksi yang dipakai, jenis registermode pengalamatanarsitektur memori, penanganan interupsi,eksepsi, dan operasi I/O eksternalnya (jika ada).
ISA merupakan sebuah spesifikasi dari kumpulan semua kode-kode biner (opcode) yang diimplementasikan dalam bentuk aslinya (native form) dalam sebuah desain prosesor tertentu. Kumpulan opcode tersebut, umumnya disebut sebagai bahasa mesin (machine language) untuk ISA yang bersangkutan. ISA yang populer digunakan adalah set instruksi untuk chipIntel x86IA-64IBM PowerPCMotorola 68000Sun SPARCDEC Alpha, dan lain-lain.
ISA kadang-kadang digunakan untuk membedakan kumpulan karakteristik yang disebut di atas dengan mikroarsitektur prosesor, yang merupakan kumpulan teknik desain prosesor untuk mengimplementasikan set instruksi (mencakup microcodepipelinesistem cachemanajemen daya, dan lainnya). Komputer-komputer dengan mikroarsitektur berbeda dapat saling berbagi set instruksi yang sama. Sebagai contoh, prosesor Intel Pentium dan prosesor AMD Athlon mengimplementasikan versi yang hampir identik dari set instruksi Intel x86, tetapi jika ditinjau dari desain internalnya, perbedaannya sangat radikal. Konsep ini dapat diperluas untuk ISA-ISA yang unik seperti TIMI yang terdapat dalam IBM System/38 dan IBM IAS/400. TIMI merupakan sebuah ISA yang diimplementasikan sebagai perangkat lunak level rendah yang berfungsi sebagai mesin virtual. TIMI didesain untuk meningkatkan masa hidup sebuah platform dan aplikasi yang ditulis untuknya, sehingga mengizinkan platform tersebut agar dapat dipindahkan ke perangkat keras yang sama sekali berbeda tanpa harus memodifikasi perangkat lunak (kecuali yang berkaitan dengan TIMI). Hal ini membuat IBM dapat memindahkan platform AS/400 dari arsitektur mikroprosesor CISC ke arsitektur mikroprosesor POWER tanpa harus menulis ulang bagian-bagian dari dalam sistem operasi atau perangkat lunak yang diasosiasikan dengannya.
Ketika mendesain mikroarsitektur, para desainer menggunakan Register Transfer Language (RTL) untuk mendefinisikan operasi dari setiap instruksi yang terdapat dalam ISA.
Sebuah ISA juga dapat diemulasikan dalam bentuk perangkat lunak oleh sebuah interpreter. Karena terjadi translasi tambahan yang dibutuhkan untuk melakukan emulasi, hal ini memang menjadikannya lebih lambat jika dibandingkan dengan menjalankan program secara langsung di atas perangkat keras yang mengimplementasikan ISA tersebut. Akhir-akhir ini, banyak vendor ISA atau mikroarsitektur yang baru membuat perangkat lunak emulator yang dapat digunakan oleh para pengembang perangkat lunak sebelum implementasi dalam bentuk perangkat keras dirilis oleh vendor.
Daftar ISA di bawah ini tidak dapat dikatakan komprehensif, mengingat banyaknya arsitektur lama yang tidak digunakan lagi saat ini atau adanya ISA yang baru dibuat oleh para desainer.


ISA yang diimplementasikan dalam bentuk perangkat keras


ISA yang diimplementasikan dalam bentuk perangkat lunak lalu dibuat perangkat kerasnya

  • p-Code (UCSD p-System Version III on Western Digital Pascal Micro-Engine)
  • Java virtual machine (ARM Jazelle, PicoJava)
  • FORTH


ISA yang tidak pernah diimplementasikan dalam bentuk perangkat keras

  • SECD machine
  • ALGOL Object Code
Sumber: WIKIPEDIA

Senin, 10 Oktober 2011

Multiplexer/Demultiplexer, Counter dan Register

kali ini saya akan membahas tentang Multiplexer/Demultiplexer, Counter dan Register, oke langsung aja lihat artikel saya dibawah ini...


Apa itu  Multiplexer, Demultiplexer, Counter dan Register ?
Multiplexer dan Demultiplexer
Multiplekser atau disingkat MUX adalah alat atau komponen elektronika yang bisa memilih input (masukan) yang akan diteruskan ke bagian output (keluaran). Pemilihan input mana yang dipilih akan ditentukan oleh signal yang ada di bagian kontrol (kendali)Select.


Skema Multiplexer 2 input-ke-1 output
Komponen yang berfungsi kebalikan dari MUX ini disebut Demultiplekser (DEMUX). Pada DEMUX, jumlah masukannya hanya satu, tetapi bagian keluarannya banyak. Signal pada bagian input ini akan disalurkan ke bagian output (channel) yang mana tergantung dari kendali pada bagian SELECTnya.


Skema Demultiplexer 1-ke-2

Counter

a. Counter Asyncronous
Counter Asyncronous disebut juga Ripple Through Counter atau Counter Serial(SerialCounter), karena output masing-masingflip-flop yang digunakan akan bergulingan (berubahkondisidari“0”ke“1”) dan sebaliknya secara berurutan atau langkah demi langkah, hal ini disebabkan karena hanya flip-flop yang paling ujung saja yang dikendalikan oleh sinyal clock, sedangkan sinyal Clock untuk flip-flop lainnya diambilkan dari masing-masing flip-flop sebelumnya.

b. Counter Syncronous
Counter synchronous disebut sebagai Counter parallel, output flip-flop yang digunakan bergulingan secara serempak. Hal ini disebabkan karena masing-masing flip-flop tersebut dikendalikan secara serempak oleh sinyal Clock.
Register
Register atau yang disebut dengan memoria adalah suatu rangkaian logika yang mampu menyimpan data dalam bentuk bilangan biner. Fungsi dari register ini selain sebagai penyimpanan data juga untuk menghindari berkedipnya angka yang ditunjukkan oleh display (seven segment) pada saat menerima pulsa-pulsa yang diberikan oleh decoder.
Sebuah register geser dapat memindahkan bit-bit yang tersimpan kekiri atau kekanan. Register geser dikelompokkan sebagai urutan rangkaian logika, oleh karena itu register geser disusun dari rangkain Flip-Flop. Selain untuk pergeseran data, register geser juga dapat digunakan untuk mengubah data seri ke parallel atau dari data parallel keseri.

Aljabar Boolean & Karnaugh Map


Kali ini saya akan membuat sebuah artikel tentang Aljabar Boolean dan Karnaugh Map....oke langsung aja lihat penjelasan pada artikel dibawah ini....

Aljabar Boolean
Aljabar Boolean memuat variable dan simbul operasi untuk gerbang logika. Simbol yang digunakan pada aljabar Boolean adalah: (.) untuk AND, (+) untuk OR, dan ( ) untuk NOT. Rangkaian logika merupakan gabungan beberapa gerbang, untuk mempermudah penyeleseian perhitungan secara aljabar dan pengisian tabel kebenaran digunakan sifat-sifat aljabar Boolean
Dalam aljabar boolean digunakan 2 konstanta yaitu logika 0 dan logika 1. ketika logika tersebut diimplementasikan kedalam rangkaian logika maka logika tersebut akan bertaraf sebuah tegangan. kalau logika 0 bertaraf tegangan rendah (aktive low) sedangkan kalau logika 1 bertaraf tegangan tinggi (aktive high). pada teori – teori aljabar boolean ini berdasarkan aturan – aturan dasar hubungan antara variabel – variabel boolean.
Dalil-dalil Boolean (Boolean postulates) P1: X= 0 atau X=1
P2: 0 . 0 = 0
P3: 1 + 1 = 1
P4: 0 + 0 = 0
P5: 1 . 1 = 1
P6: 1 . 0 = 0 . 1 = 0
P7: 1 + 0 = 0 + 1 = 1
Theorema Aljabar Boolean T1: Commutative Law
a. A + B = B + A
b. A . B = B . A
T2: Associative Law
a. ( A + B ) + C = A + ( B + C )
b. ( A . B ) . C = A . ( B . C )
T3: Distributive Law
a. A . ( B + C ) = A . B + A . C
b. A + ( B . C ) = ( A + B ) . ( A + C )
T4: Identity Law
a. A + A = A
b. A . A = A
T5: Negation Law
1. ( A’ ) = A’
2. ( A’ )’ = A
T6: Redundant Law
a. A + A . B = A
b. A . ( A + B ) = A
T7: 0 + A = A
1 . A = A
1 + A = 1
0 . A = 0
T8: A’ + A = 1
A’ . A = 0
T9: A + A’ . B = A + B A . ( A’ + B ) = A . B
T10: De Morgan’s Theorem
a. (A+B)’ = A’ . B’
b. (A . B)’= A’ + B’
Karnaugh Map 
Karnaugh map (disingkat K-Map) adalah suatu metode untuk menjelaskan beberapa hal tentang penghitung aljabar boolean, metode ini telah ditemukan oleh Maurice Karnaugh pada tahun 1953. Karnaugh map ini sering digunakan untuk perhitungan yang menghitung sistem pola pikir manusia dengan hal-hal yang menguntungkan (sistem pemetaan peluang).
Seperti gambar dibawah ini adalah sistem pemetaan pada bilang aljabar boolean :
gambar 1 sistem pemetaan pada karnaugh map
pada gambar pemetaan diatas, variabel dari aljabar boolean ditransfer berdasarkan variabelnya masing-masing, dimana terjadi sistem perubahan pada beberapa kotak sehingga menghasilkan sebuah rumus 2n dengan n adalah banyaknya kotak (1,2,3,4,…).
Dibawah sini ada beberapa sistem penghitungan aljabar boolean dengan menggunakan karnaugh map diantaranya :
gambar 2 ∑(0); K = 0
gambar 3 ∑(1,2,3,4); K = 1
gambar 4 ∑(1,4); K = A′B′ + AB
gambar 5 ∑(1); K = A′B′
gambar 6 ∑(2,3,4); K = A + B
dari sistem penghitungan diatas dapat kita simpulkan bahwa sistem berdasarkan f(n) dengan n adalah nilai kolom pada tabel boolean dan pada gambar 1 menjelaskan bahwa seluruh jumlah adalah nol karena tidak ada nilai yang dapat dihitung, namun pada gambar 2 seluruh kolom terdapat nilai sehingga jumlah dari tabel tersebut adalah satu, namun jika pada gambar 3,4,5 dan 6 adalah penjumlahan pada bidang yang masing-masing memiliki nilai pada satu kolomnya, baik itu pada kolom A maupun kolom B.
Dalam aplikasi di kehuidupan kenyataan karnaugh map digunakan untuk menghitung sebuah peluang yang akan didapat sebuah permasalahan, dan kebanyakan digunakan untuk menghitung untung ruginya sistem permainan saham.

Sejarah Komputer


Kali ini saya akan membuat artikel tentang Sejarah Komputer, ga usah basa-basi lagi deh, langsung simak saja artikel yang saya berikan.....
Sejarah Komputer menurut periodenya adalah:
* Alat Hitung Tradisional dan Kalkulator Mekanik
* Komputer Generasi Pertama
* Komputer Generasi Kedua
* Komputer Generasi Ketiga
* Komputer Generasi Keempat
* Komputer Generasi Kelima
Awal mula komputer yang sebenarnya dibentuk oleh seorang profesor matematika Inggris, Charles Babbage (1791-1871). Tahun 1812, Babbage memperhatikan kesesuaian alam antara mesin mekanik dan matematika yaitu mesin mekanik sangat baik dalam mengerjakan tugas yang sama berulangkali tanpa kesalahan; sedang matematika membutuhkan repetisi sederhana dari suatu langkah-langkah tertenu. Masalah tersebut kemudain berkembang hingga menempatkan mesin mekanik sebagai alat untuk menjawab kebutuhan mekanik. Usaha Babbage yang pertama untuk menjawab masalah ini muncul pada tahun 1822 ketika ia mengusulkan suatu mesin untuk melakukanperhitungan persamaan differensial. Mesin tersebut dinamakan Mesin Differensial. Dengan menggunakan tenaga uap, mesin tersebut dapat menyimpan program dan dapat melakukan kalkulasi serta mencetak hasilnya secara otomatis.
Setelah bekerja dengan Mesin Differensial selama sepuluh tahun, Babbage tiba-tiba terinspirasi untuk memulai membuat komputer general-purpose yang pertama, yang disebut Analytical Engine. Asisten Babbage, Augusta Ada King (1815-1842) memiliki peran penting dalam pembuatan mesin ini. Ia membantu merevisi rencana, mencari pendanaan dari pemerintah Inggris, dan mengkomunikasikan spesifikasi Analytical Engine kepada publik. Selain itu, pemahaman Augusta yang baik tentang mesin ini memungkinkannya membuat instruksi untuk dimasukkan ke dalam mesin dan juga membuatnya menjadi programmer wanita yang pertama. Pada tahun 1980, Departemen Pertahanan Amerika Serikat menamakan sebuah bahasa pemrograman dengan nama ADA sebagai penghormatan kepadanya.
Mesin uap Babbage, walaupun tidak pernah selesai dikerjakan, tampak sangat primitif apabila dibandingkan dengan standar masa kini. Bagaimanapun juga, alat tersebut menggambarkan elemen dasar dari sebuah komputer modern dan juga mengungkapkan sebuah konsep penting. Terdiri dari sekitar 50.000 komponen, disain dasar dari Analytical Engine menggunakan kartu-kartu perforasi (berlubang-lubang) yang berisi instruksi operasi bagi mesin tersebut.
Pada 1889, Herman Hollerith (1860-1929) juga menerapkan prinsip kartu perforasi untuk melakukan penghitungan. Tugas pertamanya adalah menemukan cara yang lebih cepat untuk melakukan perhitungan bagi Biro Sensus Amerika Serikat. Sensus sebelumnya yang dilakukan di tahun 1880 membutuhkan waktu tujuh tahun untuk menyelesaikan perhitungan. Dengan berkembangnya populasi, Biro tersebut memperkirakan bahwa dibutuhkan waktu sepuluh tahun untuk menyelesaikan perhitungan sensus.
Hollerith menggunakan kartu perforasi untuk memasukkan data sensus yang kemudian diolah oleh alat tersebut secara mekanik. Sebuah kartu dapat menyimpan hingga 80 variabel. Dengan menggunakan alat tersebut, hasil sensus dapat diselesaikan dalam waktu enam minggu. Selain memiliki keuntungan dalam bidang kecepatan, kartu tersebut berfungsi sebagai media penyimpan data. Tingkat kesalahan perhitungan juga dapat ditekan secara drastis. Hollerith kemudian mengembangkan alat tersebut dan menjualnya ke masyarakat luas. Ia mendirikan Tabulating Machine Company pada tahun 1896 yang kemudian menjadi International Business Machine (1924) setelah mengalami beberapa kali merger. Perusahaan lain seperti Remington Rand and Burroghs juga memproduksi alat pembaca kartu perforasi untuk usaha bisnis. Kartu perforasi digunakan oleh kalangan bisnis dn pemerintahan untuk permrosesan data hingga tahun 1960.
Pada masa berikutnya, beberapa insinyur membuat penemuan baru lainnya. Vannevar Bush (18901974) membuat sebuah kalkulator untuk menyelesaikan persamaan differensial di tahun 1931. Mesin tersebut dapat menyelesaikan persamaan differensial kompleks yang selama ini dianggap rumit oleh kalangan akademisi. Mesin tersebut sangat besar dan berat karena ratusan gerigi dan poros yang dibutuhkan untuk melakukan perhitungan. Pada tahun 1903, John V. Atanasoff dan Clifford Berry mencoba membuat komputer elektrik yang menerapkan aljabar Boolean pada sirkuit elektrik. Pendekatan ini didasarkan pada hasil kerja George Boole (1815-1864) berupa sistem biner aljabar, yang menyatakan bahwa setiap persamaan matematik dapat dinyatakan sebagai benar atau salah. Dengan mengaplikasikan kondisi benar-salah ke dalam sirkuit listrik dalam bentuk terhubung-terputus, Atanasoff dan Berry membuat komputer elektrik pertama di tahun 1940. Namun proyek mereka terhenti karena kehilangan sumber pendanaan.
Dengan terjadinya Perang Dunia Kedua, negara-negara yang terlibat dalam perang tersebut berusaha mengembangkan komputer untuk mengeksploitasi potensi strategis yang dimiliki komputer. Hal ini meningkatkan pendanaan pengembangan komputer serta mempercepat kemajuan teknik komputer. Pada tahun 1941, Konrad Zuse, seorang insinyur Jerman membangun sebuah komputer Z3, untuk mendisain pesawat terbang dan peluru kendali.
Pihak sekutu juga membuat kemajuan lain dalam pengembangan kekuatan komputer. Tahun 1943, pihak Inggris menyelesaikan komputer pemecah kode rahasia yang dinamakan Colossus untuk memecahkan kode-rahasia yang digunakan Jerman. Dampak pembuatan Colossus tidak terlalu mempengaruhi perkembangan industri komputer dikarenakan dua alasan. Pertama, colossus bukan merupakan komputer serbaguna general-purpose computer), ia hanya didisain untuk memecahkan kode rahasia. Kedua, keberadaan mesin ini dijaga kerahasiaannya hingga satu dekade setelah perang berakhir.
Usaha yang dilakukan oleh pihak Amerika pada saat itu menghasilkan suatu kemajuan lain. Howard H. Aiken (1900-1973), seorang insinyur Harvard yang bekerja dengan IBM, berhasil memproduksi kalkulator elektronik untuk US Navy. Kalkulator tersebut berukuran panjang setengah lapangan bola kaki dan memiliki rentang kabel sepanjang 500 mil. The Harvd-IBM Automatic Sequence Controlled Calculator, atau Mark I, merupakan komputer relai elektronik. Ia menggunakan sinyal elektromagnetik untuk menggerakkan komponen mekanik. Mesin tersebut beropreasi dengan lambat (ia membutuhkan 3-5 detik untuk setiap perhitungan) dan tidak fleksibel (urutan kalkulasi tidak dapat diubah). Kalkulator tersebut dapat melakukan perhitungan aritmatik dasar dan persamaan yang lebih kompleks.
Perkembangan komputer lain pada masa ini adalah Electronic Numerical Integrator and Computer (ENIAC), yang dibuat oleh kerjasama antara pemerintah Amerika Serikat dan University of Pennsylvania. Terdiri dari 18.000 tabung vakum, 70.000 resistor, dan 5 juta titik solder, komputer tersebut merupakan mesin yang sangat besar yang mengkonsumsi daya sebesar 160kW. Komputer ini dirancang oleh John Presper Eckert (1919-1995) dan John W. Mauchly (1907-1980), ENIAC merupakan komputer serbaguna (general purpose computer) yang bekerja 1000 kali lebih cepat dibandingkan Mark I.Pada pertengahan 1940-an, John von Neumann (1903-1957) bergabung dengan tim University of Pennsylvania dalam usha membangun konsep desin komputer yang hingga 40 tahun mendatang masih dipakai dalam teknik komputer.
Von Neumann mendesain Electronic Discrete Variable Automatic Computer(EDVAC) pada tahun 1945 dengan sebuah memori untuk menampung baik program ataupun data. Teknik ini memungkinkan komputer untuk berhenti pada suatu saat dan kemudian melanjutkan pekerjaannya kembali. Kunci utama arsitektur von Neumann adalah unit pemrosesan sentral (CPU), yang memungkinkan seluruh fungsi komputer untuk dikoordinasikan melalui satu sumber tunggal. Tahun 1951, UNIVAC I (Universal Automatic Computer I) yang dibuat oleh Remington Rand, menjadi komputer komersial pertama yang memanfaatkan model arsitektur von Neumann tersebut. Baik Badan Sensus Amerika Serikat dan General Electric memiliki UNIVAC. Salah satu hasil mengesankan yang dicapai oleh UNIVAC dalah keberhasilannya dalam memprediksi kemenangan Dwilight D. Eisenhower dalam pemilihan presiden tahun 1952.
Komputer Generasi pertama dikarakteristik dengan fakta bahwa instruksi operasi dibuat secara spesifik untuk suatu tugas tertentu. Setiap komputer memiliki program kode-biner yang berbeda yang disebut “bahasa mesin” (machine language). Hal ini menyebabkan komputer sulit untuk diprogram dan membatasi kecepatannya. Ciri lain komputer generasi pertama adalah penggunaan tube vakum (yang membuat komputer pada masa tersebut berukuran sangat besar) dan silinder magnetik untuk penyimpanan data.
Pada tahun 1948, penemuan transistor sangat mempengaruhi perkembangan komputer. Transistor menggantikan tube vakum di televisi, radio, dan komputer. Akibatnya, ukuran mesin-mesin elektrik berkurang drastis. Transistor mulai digunakan di dalam komputer mulai pada tahun 1956. Penemuan lain yang berupa pengembangan memori inti-magnetik membantu pengembangan komputer generasi kedua yang lebih kecil, lebih cepat, lebih dapat diandalkan, dan lebih hemat energi dibanding para pendahulunya. Mesin pertama yang memanfaatkan teknologi baru ini adalah superkomputer. IBM membuat superkomputer bernama Stretch, dan Sprery-Rand membuat komputer bernama LARC. Komputer-komputer ini, yang dikembangkan untuk laboratorium energi atom, dapat menangani sejumlah besar data, sebuah kemampuan yang sangat dibutuhkan oleh peneliti atom. Mesin tersebut sangat mahal dan cenderung terlalu kompleks untuk kebutuhan komputasi bisnis, sehingga membatasi kepopulerannya. Hanya ada dua LARC yang pernah dipasang dan digunakan: satu di Lawrence Radiation Labs di Livermore, California, dan yang lainnya di US Navy Research and Development Center di Washington D.C. Komputer generasi kedua menggantikan bahasa mesin dengan bahasa assembly. Bahasa assembly adalah bahasa yang menggunakan singkatan-singkatan untuk menggantikan kode biner.
Pada awal 1960-an, mulai bermunculan komputer generasi kedua yang sukses di bidang bisnis, di universitas, dan di pemerintahan. Komputer-komputer generasi kedua ini merupakan komputer yang sepenuhnya menggunakan transistor. Mereka juga memiliki komponen-komponen yang dapat diasosiasikan dengan komputer pada saat ini: printer, penyimpanan dalam disket, memory, sistem operasi, dan program. Salah satu contoh penting komputer pada masa ini adalah IBM 1401 yang diterima secara luas di kalangan industri. Pada tahun 1965, hampir seluruh bisnis-bisnis besar menggunakan komputer generasi kedua untuk memproses informasi keuangan.
Program yang tersimpan di dalam komputer dan bahasa pemrograman yang ada di dalamnya memberikan fleksibilitas kepada komputer. Fleksibilitas ini meningkatkan kinerja dengan harga yang pantas bagi penggunaan bisnis. Dengan konsep ini, komputer dapat mencetak faktur pembelian konsumen dan kemudian menjalankan desain produk atau menghitung daftar gaji. Beberapa bahasa pemrograman mulai bermunculan pada saat itu. Bahasa pemrograman Common Business-Oriented Language (COBOL) dan Formula Translator (FORTRAN) mulai umum digunakan. Bahasa pemrograman ini menggantikan kode mesin yang rumit dengan kata-kata, kalimat, dan formula matematika yang lebih mudah dipahami oleh manusia. Hal ini memudahkan seseorang untuk memprogram dan mengatur komputer. Berbagai macam karir baru bermunculan (programmer, analyst, dan ahli sistem komputer). Industri piranti lunak juga mulai bermunculan dan berkembang pada masa komputer generasi kedua ini.
Walaupun transistor dalam banyak hal mengungguli tube vakum, namun transistor menghasilkan panas yang cukup besar, yang dapat berpotensi merusak bagian-bagian internal komputer. Batu kuarsa (quartz rock) menghilangkan masalah ini. Jack Kilby, seorang insinyur di Texas Instrument, mengembangkan sirkuit terintegrasi (IC: integrated circuit) di tahun 1958. IC mengkombinasikan tiga komponen elektronik dalam sebuah piringan silikon kecil yang terbuat dari pasir kuarsa. Para ilmuwan kemudian berhasil memasukkan lebih banyak komponen-komponen ke dalam suatu chip tunggal yang disebut semikonduktor. Hasilnya, komputer menjadi semakin kecil karena komponen-komponen dapat dipadatkan dalam chip. Kemajuan komputer generasi ketiga lainnya adalah penggunaan sistem operasi (operating system) yang memungkinkan mesin untuk menjalankan berbagai program yang berbeda secara serentak dengan sebuah program utama yang memonitor dan mengkoordinasi memori komputer.
Setelah IC, tujuan pengembangan menjadi lebih jelas yaitu mengecilkan ukuran sirkuit dan komponen-komponen elektrik. Large Scale Integration (LSI) dapat memuat ratusan komponen dalam sebuah chip. Pada tahun 1980-an, Very Large Scale Integration (VLSI) memuat ribuan komponen dalam sebuah chip tunggal.Ultra-Large Scale Integration (ULSI) meningkatkan jumlah tersebut menjadi jutaan. Kemampuan untuk memasang sedemikian banyak komponen dalam suatu keping yang berukuran setengah keping uang logam mendorong turunnya harga dan ukuran komputer. Hal tersebut juga meningkatkan daya kerja, efisiensi dan kehandalan komputer. Chip Intel 4004 yang dibuat pada tahun 1971 membawa kemajuan pada IC dengan meletakkan seluruh komponen dari sebuah komputer (central processing unit, memori, dan kendali input/output) dalam sebuah chip yangsangat kecil. Sebelumnya, IC dibuat untuk mengerjakan suatu tugas tertentu yang spesifik. Sekarang, sebuah mikroprosesor dapat diproduksi dan kemudian diprogram untuk memenuhi seluruh kebutuhan yang diinginkan. Tidak lama kemudian, setiap perangkat rumah tangga seperti microwave oven, televisi, dan mobil dengan electronic fuel injection dilengkapi dengan mikroprosesor.
Perkembangan yang demikian memungkinkan orang-orang biasa untuk menggunakan komputer biasa. Komputer tidak lagi menjadi dominasi perusahaan-perusahaan besar atau lembaga pemerintah. Pada pertengahan tahun 1970-an, perakit komputer menawarkan produk komputer mereka ke masyarakat umum. Komputer-komputer ini, yang disebut minikomputer, dijual dengan paket piranti lunak yang mudah digunakan oleh kalangan awam. Piranti lunak yang paling populer pada saat itu adalah program word processing dan spreadsheet. Pada awal 1980-an, video game seperti Atari 2600 menarik perhatian konsumen pada komputer rumahan yang lebih canggih dan dapat diprogram.Pada tahun 1981, IBM memperkenalkan penggunaan Personal Computer (PC) untuk penggunaan di rumah, kantor, dan sekolah. Jumlah PC yang digunakan melonjak dari 2 juta unit di tahun 1981 menjadi 5,5 juta unit di tahun 1982. Sepuluh tahun kemudian, 65 juta PC digunakan. Komputer melanjutkan evolusinya menuju ukuran yang lebih kecil, dari komputer yang berada di atas meja (desktop computer) menjadi komputer yang dapat dimasukkan ke dalam tas (laptop), atau bahkan komputer yang dapat digenggam (palmtop).
IBM PC bersaing dengan Apple Macintosh dalam memperebutkan pasar komputer. Apple Macintosh menjadi terkenal karena mempopulerkan sistem grafis pada komputernya, sementara saingannya masih menggunakan komputer yang berbasis teks. Macintosh juga mempopulerkan penggunaan piranti mouse.
Pada masa sekarang, kita mengenal perjalanan IBM compatible dengan pemakaian CPU: IBM PC/486, Pentium, Pentium II, Pentium III, Pentium IV (Serial dari CPU buatan Intel). Juga kita kenal AMD k6, Athlon, dsb. Ini semua masuk dalam golongan komputer generasi keempat. Seiring dengan menjamurnya penggunaan komputer di tempat kerja, cara-cara baru untuk menggali potensi terus dikembangkan. Seiring dengan bertambah kuatnya suatu komputer kecil, komputer-komputer tersebut dapat dihubungkan secara bersamaan dalam suatu jaringan untuk saling berbagi memori, piranti lunak, informasi, dan juga untuk dapat saling berkomunikasi satu dengan yang lainnya. Komputer jaringan memungkinkan komputer tunggal untuk membentuk kerjasama elektronik untuk menyelesaikan suatu proses tugas. Dengan menggunakan perkabelan langsung (disebut juga local area network, LAN), atau kabel telepon, jaringan ini dapat berkembang menjadi sangat besar.
Mendefinisikan komputer generasi kelima menjadi cukup sulit karena tahap ini masih sangat muda. Contoh imajinatif komputer generasi kelima adalah komputer fiksi HAL9000 dari novel karya Arthur C. Clarke berjudul 2001:Space Odyssey. HAL menampilkan seluruh fungsi yang diinginkan dari sebuah komputer generasi kelima. Dengan kecerdasan buatan (artificial intelligence), HAL dapat cukup memiliki nalar untuk melakukan percapakan dengan manusia, menggunakan masukan visual, dan belajar dari pengalamannya sendiri.
Walaupun mungkin realisasi HAL9000 masih jauh dari kenyataan, banyak fungsi-fungsi yang dimilikinya sudah terwujud. Beberapa komputer dapat menerima instruksi secara lisan dan mampu meniru nalar manusia. Kemampuan untuk menterjemahkan bahasa asing juga menjadi mungkin. Fasilitas ini tampak sederhan. Namun fasilitas tersebut menjadi jauh lebih rumit dari yang diduga ketika programmer menyadari bahwa pengertian manusia sangat bergantung pada konteks dan pengertian daripada sekedar menterjemahkan kata-kata secara langsung.
Banyak kemajuan di bidang disain komputer dan teknologi semakin memungkinkan pembuatan komputer generasi kelima. Dua kemajuan rekayasa yang terutama adalah kemampuan pemrosesan paralel, yang akan menggantikan model von Neumann. Model von Neumann akan digantikan dengan sistem yang mampu mengkoordinasikan banyak CPU untuk bekerja secara serempak. Kemajuan lain adalah teknologi superkonduktor yang memungkinkan aliran elektrik tanpa ada hambatan apapun, yang nantinya dapat mempercepat kecepatan informasi.