Pengantar
Pada
kesempatan kali ini aku mau post tentang Teknologi Informasi dan Perangkat
Keras Komputer. Disini aku akan bahasa tentang apa sih itu komputer, perangkat
keras, kategori komputer, komponen dan konsep dasar komputer dan banyak lagi
informasi yang aku bagikan di blog ini. Baiklah langsung saja ke penjelasan apa
sih itu komputer ? Komputer adalah alat bantu untuk mengelola masalah komputasi
dari komponen yang saling berhubungan yang mempunyai fungsi tertentu dalam
mengelola informasi.
Ketika kita
berbicara tentang komputer tidak lepas dari perangkat keras yang paling dekat
dengan kita selain daripada komputer terdapat juga laptop, pc, dan smartphone
untuk saat ini selalu kita jadikan panutan terutama seseorang yang bergelut di
dunia teknologi dan komputering.
Kategori
Komputer :
1. Mainframe
Mainframe
adalah komputer berukuran besar sekitar besar lemari pakaian, mempunyai memori
sangat besar dan kemampuan pemorosesan yang sangat cerdas. Kenapa mengunakan
mainframe ?
·
Cakupannya
luas dan terhubung dengan jaringan internet yang baik dengan OS/390,
·
Tidak
mempunyai banyak client sehingga client dapat leluasa,
·
Penghematan
ukuran, energi dan perawatan.
2. Midrange
Midrange
sering juga disebut server tetapi berbentuk pc, komputer berukuran lebih kecil ini
baik dalam hal harga maupun kemampuannya yang mendukung daripada mainframe. Bekerja
mengunakan linux dan windows server.
3.Komputer
Mikro
Komputer Mikro |
1) Berdasarkan tujuan penggunaanya : Laptop,
notebook, desktop, portable.
2) Berdasarkan pemanfaatanya : .komputer
rumah, komputer pribadi, dan sistem multiguna.
4.Super
Komputer
Super
komputer berkemampuan sangat besar dan canggih yang digunakan untuk tugas yang
memerlukan kalkulasi sangat kompleks dan cepat dengan ratuasan ribu faktor
variabel.
Konsep dan
Komponen Sistem Komputer
1. Input :
Input Device adalah perangkat keras komputer yang berfungsi sebagai alat
untuk memasukan data atau perintah ke dalam komputer. Alat-alatnya adalah :
1)
Keyboard
2)
Pointing Device
3)
Mouse
4)
Touch screen
5)
Digitizer Grapich Tablet
6)
Scanner
7)
Microphone
2. Output :
Output Device adalah perangkat keras komputer yang erfungsi untuk
menampilkan keluaran sebagai hasil pengolahan data. Keluaran dapat berupa
hard-copy (ke ertas), soft-copy (ke monitor), ataupun berupa suara. latnya
antara lain adalah :
1)
Monitor
2)
Printer
3)
Speaker
Central
Processing Unit (CPU)
adalah
komponen perangkat keras dalam komputer yang terdiri dari penyimpanan primer
dan pemroses utama yang terdiri dari aritmaic logic unit dan control unit. berperanan
untuk memproses arahan, melaksanakan pengiraan dan menguruskan laluan informasi
menerusi system komputer. Unit atau peranti pemprosesan juga akan
berkomunikasidengan peranti input , output dan storan bagi melaksanakan
arahan-arahan berkaitan.
1.
ALU (Arithmatic and Logic Unit)
ALU merupakan bagian pengolah bilangan biner dari sebuah prosesor. ALU bertugas
melakukan operasi-operasi aritmatika dan logika sesuai dengan instruksi yang
diberikan. ALU juga merupakan salah satu bagian yang terpenting. Unit aritmetik
logika (ALU) terdiri dari sirkuit elektronik yang membuatnya mampu melaksanakan
operasi aritmatika dan logika. Ia mengeksekusi instruksi dan melakukan
perhitungan (tambah, kali, kurang, dan bagi) dan perbandingan. ALU bekerja
dengan register yang berbeda untuk menyimpan data atau informasi tentang
tindakan terakhir yang dilakukan oleh unit logika. ALU mampu membandingkan
huruf, angka, atau karakter khusus. Komponen dari rangkaian logika pada ALU
adalah gerbanggerbang logika AND, OR, XOR, dan NOT yang dihubungkan pada
multiplexer. Selain itu juga terdapat juga operasi shifter yang komponen
dasarnya adalah multiplexer. Komponen ALU mendapatkan masukan data dari
register dan sinyal kontrol dari CU. Untuk operasi ALU dengan dua masukan, diperlukan
dua register 8-bit: ACC (accumulator) untuk masukan pertama dan temp (register
sementara) untuk masukan kedua. Hasil dari operasi ALU ini adalah data 8-bit
yang kemudian diteruskan ke register untuk menyimpan hasil operasi ini. Selain
itu juga dihasilkan flag atau bit status. Flag ini akan diteruskan ke register
yang menyimpan flag hasil dari operasi ALU. Untuk mempercepat pemrosesan data
di dalam prosesor, selain CU dan ALU, prosesor juga membutuhkan memori dengan
kecepatan yang sama dengan prosesor. Memori khusus yang diimplementasikan pada
prosesor ini disebut register. Komponen utama penyusun register adalah
flip-flop.
2.
CU (Control Unit)
adalah salah satu bagian dari CPU yang
bertugas untuk memberikan arahan / kendali / kontrol terhadap operasi yang
dilakukan di bagian ALU (Arithmetic Logical Unit) di dalam CPU tersebut. Output
dari CU ini akan mengatur aktivitas dari bagian lainnya dari perangkat CPU
tersebut. Pada awal-awal desain komputer, CU diimplementasikan sebagai ad-hoc
logic
yang susah untuk didesain. Sekarang, CU diimplementasikan sebagai sebuah microprogram yang disimpan di dalam tempat penyimpanan kontrol (control store). Dimana fungsinya sebagai berikut :
yang susah untuk didesain. Sekarang, CU diimplementasikan sebagai sebuah microprogram yang disimpan di dalam tempat penyimpanan kontrol (control store). Dimana fungsinya sebagai berikut :
1. Mengatur dan mengendalikan alat-alat
input dan output.
2. Mengambil instruksi-instruksi dari
memori utama.
3. Mengambil data dari memori utama
kalau diperlukan oleh proses.
4. Mengirim instruksi ke ALU bila ada
perhitungan aritmatika atau perbandingan logika serta mengawasi kerja.
5. Menyimpan hasil proses ke memori
utama.
3.
RAM ( Random Access Memory )
Untuk
menyimpan program yang kita olah untuk sementara waktu. Dapat diakses secara
acak ( dapat diisi/ditulis, diambil, atau dihapus isinya ). Struktur RAM
terbagi menjadi empat bagian utama, yaitu:
i. Input Storage Digunakan untuk menampung input yang dimasukkan melalui alat input.
ii. Program Storage Digunakan untuk menyimpan semua instruksi-instruksi program yang akan diakses.
i. Input Storage Digunakan untuk menampung input yang dimasukkan melalui alat input.
ii. Program Storage Digunakan untuk menyimpan semua instruksi-instruksi program yang akan diakses.
iii. Working
Storage Digunakan untuk menyimpan data yang akan diolah dan hasil pengolahan.
iv. Output Storge Digunakan untuk menampung hasil akhir dari pengolahan data yang akan ditampilkan ke alat output.
iv. Output Storge Digunakan untuk menampung hasil akhir dari pengolahan data yang akan ditampilkan ke alat output.
4.
ROM ( Read Only Memori )
Memori yang
hanya bisa dibaca dan berguna sebagai penyedia informasi pada saat komputer
pertama kali dinyalakan. Hanya dapat dibaca, tidak bisa mengisi sesuatu ke
dalam ROM, sudah diisi oleh pabrik pembuatnya. Berupa sistem operasi yg terdiri
dari program pokok, seperti program untuk mengatur penampilan karakter di
layar, pengisian tombol kunci papan ketik untuk keperluan kontrol tertentu, dan
bootstrap program. Program bootstrap diperlukan pada saat pertama kali sistem
komputer diaktifkan (booting), yang dapat berupa cold booting atau
warm booting.
5. PROM (Programmable Read Only Memory), yang hanya dapat diprogram satu kali.
6. EEPROM (Electrically Erasable
Programmable Read Only Memory), dapat dihapus secara elektronik dan dapat diprogram
kembali.
7. Adress.
Tentang
Swap
Fungsi swap adalah fungsi yang digunakan untuk menukarkan dua buah nilai.
Fungsi ini sangat dibutuhkan ketika kita hendak membuat aplikasi pengurutan
data (sorting). Pada pemrograman C++, fungsi ini sudah tersedia dengan
fleksibilitas yang tinggi. Artinya bisa digunakan untuk menukar dua buah nilai
dengan tipe data yang bermacam-macam. Walaupun sudah tersedia dan tinggal
pakai, tidak ada salahnya kita belajar bersama-sama bagaimana membuat fungsi
ini. Contoh penggunaan fungsi swap yang sudah tersedia juga akan tersedia pada
source code yang diberikan.
Sekilas Tentang Pointer
Pointer sudah pernah dibahas pada tulisan, pengenalan bahasa C++ (bagian
3). Pada bagian ini akan dijelaskan secara singkat penggunaan sederhana dari
pointer.
Konsep penting yang perlu diingat adalah, pointer biasanya digunakan untuk
menunjuk ke variabel yang lain. Untuk itu pointer membutuhkan alamat dari
variabel yang ditunjuk. Setelah mengetahui alamat, dengan menggunakan pointer
kita bisa mengubah nilai dari variabel yang ditunjuk.
Kita sudah tahu bahwa untuk membuat sebuah variabel, kita perlu menentukan
tipe dari variabel dan kita juga perlu memperhatikan aturan pemberian nama dari
variabel tersebut. Misal kita akan membuat variabel dengan nama data dan
bertipe int, maka kita dapat menulisnya sebagai berikut:
int data;
Jika kita hendak membuat pointer. Kita cukup mendambahkan tanda bintang
setelah tipe data.
int* myPointer;
pada deklarasi ini, kita membuat sebuah pointer dengan nama myPointer.
Pointer ini hanya bisa menunjuk ke variabel yang bertipe int.
Seperti yang sudah dijelaskan sebelumnya, untuk menunjuk sebuah variabel,
pointer membutuhkan alamat dari variabel yang hendak ditunjuk. Dengan
menggunakan tanda '&' kita bisa mendapatkan alamat dari sebuah variabel.
Berikut ini ditunjukkan bagaimana caranya myPointer bisa menunjuk ke alamat
dari data.
myPointer = &data;
Variabel sebenarnya hanya merupakan nama lain dari alamat dimemori. Kita
tentu akan lebih mudah mengingat nama seperti data dari pada sebuah alamat
dimemori, 0x22ff5c.
Sekarang diandaikan kita memberikan nilai 10 (sepuluh) pada variabel data
data = 10;
pernyataan tersebut sebenarnya, kita menyimpan nilai 10 ke alamat tertentu
dimemori yang diwakili dengan nama data. Karena myPointer telah menunjuk ke
alamat dari data, ini berarti myPointer juga menunjuk ke nilai 10.
Untuk mengakses (misal membaca) nilai yang ditunjuk oleh pointer, kita bisa
menggunakan tanda '*' didepan nama dari pointer.
cout<< *myPointer ;
Keluaran dari pernyataan ini adalah angka 10 akan tercetak ke layar.
Keluaran ini akan sama jika kita menampilkan nilai dari variabel data.
cout<< data;
Kita juga bisa mengubah nilai yang ditunjuk oleh pointer, seperti berikut:
*myPointer = 15;
Setelah pernyataan diatas maka keluaran dari kedua pernyataan berikut akan
sama persis yaitu menampilkan angka 15.
cout << data;
cout << *myPointer;
Membuat Fungsi Swap
Untuk membuat sebuah fungsi, kita bisa memulai dengan membayangkan
bagaimana caranya kita memanggil fungsi yang akan kita pakai. Sebagai contoh
fungsi swap yang akan kita buat dipanggil dengan cara sebagai berikut:
int a = 5;
int b= 7;
mySwap(&a,&b);
cout << a; // harapannya tertampil
7
cout << b; // harapannya tertampil
5
berangkat dari skenario di atas, tampak bahwa fungsi swap memiliki dua buah
parameter pointer dengan tipe int. Untuk itu bentuk fungsi kita kira-kira
seperti berikut:
void mySwap (int* x, int* y)
{
//body dari swap
...
}
pada kasus ini kita tidak membutuhkan nilai kembalian sehingga tipe data
dari return value dibuat void. Kenapa tidak butuh ? Silahkan melihat lagi
skenario yang kita buat di atas.
Karena fungsi kita hendak menukarkan nilai x dan nilai y (ingat x dan y adalah
pointer, sehingga kita butuh tanda * untuk mengubah nilai), maka kita
membutuhkan sebuah penampung (variabel tambahan) untuk melakukan proses
penukaran ini.
Buf = *x;// buf bernilai x
*x = *y; // x bernilai y
*y = buf;// y bernilai x
pada contoh diatas, penampung yang kita pakai adalah Buf. Karena Buf
dipakai untuk menampung nilai bertipe int, maka Buf juga harus dideklarasikan
bertipe int.
int Buf;
Dengan demikian bentuk fungsi kita selengkapnya, kira-kira seperti berikut:
void swap (int* x, int* y)
{
//body dari swap
int Buf;
Buf = *x;
*x = *y;
*y = Buf;
}
Pemanggilan fungsi dengan cara mengirimkan alamat dari variabel, dikenal
dengan istilah passing parameter by reference.
Di dalam bahasa C++, diperkenalkan teknik baru untuk pengiriman parameter
berupa reference dengan menggunakan tanda '&'. Dengan menggunakan teknik
ini, cara pemanggilan fungsi swap bisa diskenariokan sebagai berikut:
int a = 5;
int b= 7;
swap(a,b); // perhatikan tanda &
dihilangkan
cout << a;
cout << b;
Perubahan juga perlu dilakukan pada fungsi kita sebagai berikut:
void swap (int& x, int& y)
//perhatikan tanda &
{
//body dari swap
int Buf;
Buf = x;// tanda * juga dihilangkan
x = y;
y = Buf;
}
Tentang Cheat
Engine
Cheat
Engine adalah perangkat lunak (software) open source yang dirancang untuk dapat
memberikan kita jalan pintas dalam permainan/game, namun Cheat Engine ini juga
memiliki berbagai alat-alat khusus untuk membantu menelusuri (debugging)
permainan atau bahkan aplikasi biasa (normal).
Cheat Engine atau yang biasa juga
disebut CE adalah memory scanner atau editor hexsa yang diciptakan oleh Eric Heijen untuk sistem
operasi (Operating System / OS) Windows. Cheat Engine digunakan untuk berbuat
curang di berbagai game di komputer.
Semua program tersebut mencari nilai yang dimasukkan oleh pengguna dengan pilihan yang luas, seperti “Nilai awal tidak dikenal" (Unknown Initial Value) dan "Nilai yang berkurang" (Decreased Value). Cheat Engine dapat juga membuat trainer mandiri (Standalone Trainer) yang dapat dioperasikan dengan bebas dari Cheat Engine.
Cheat Engine ini disertai dengan pengamat memori atau penyaring memori (memory scanner) untuk melakukan pengamatan (scan) terhadap variabel (variable) yang digunakan dalam permainan atau aplikasi dan membolehkan kita untuk merubah variabel tersebut, tetapi di Cheat Engine ini juga disediakan fungsi penelusuran (debugger), peretas waktu (speedhack), membongkar (disassembler), pembuatan trainer (trainer maker), alat manipulasi direct3d (direct3d manipulation tools) dan alat-alat pemeriksaan sistem (system inspection tools).
Cheat Engine dapat melihat dan membongkar memory dari suatu proses dan membuat perubahan untuk memberikan keuntungan pengguna seperti nyawa tidak terbatas, waktu atau amunisi. Cheat Engine juga memiliki alat untuk memanipulasi Direct3d dan OpenGL , yang fungsinya membolehkan pengguna untuk menembus dinding, pembesaran dan pengecilan, dan dengan penataan konfigurasi yang handal dapat mengizinkan Cheat Engine untuk menggerakan mouse untuk mendapatkan tekstur tertentu ke pusat, hal ini biasa digunakan untuk membuat Aimbots.
Semua program tersebut mencari nilai yang dimasukkan oleh pengguna dengan pilihan yang luas, seperti “Nilai awal tidak dikenal" (Unknown Initial Value) dan "Nilai yang berkurang" (Decreased Value). Cheat Engine dapat juga membuat trainer mandiri (Standalone Trainer) yang dapat dioperasikan dengan bebas dari Cheat Engine.
Cheat Engine ini disertai dengan pengamat memori atau penyaring memori (memory scanner) untuk melakukan pengamatan (scan) terhadap variabel (variable) yang digunakan dalam permainan atau aplikasi dan membolehkan kita untuk merubah variabel tersebut, tetapi di Cheat Engine ini juga disediakan fungsi penelusuran (debugger), peretas waktu (speedhack), membongkar (disassembler), pembuatan trainer (trainer maker), alat manipulasi direct3d (direct3d manipulation tools) dan alat-alat pemeriksaan sistem (system inspection tools).
Cheat Engine dapat melihat dan membongkar memory dari suatu proses dan membuat perubahan untuk memberikan keuntungan pengguna seperti nyawa tidak terbatas, waktu atau amunisi. Cheat Engine juga memiliki alat untuk memanipulasi Direct3d dan OpenGL , yang fungsinya membolehkan pengguna untuk menembus dinding, pembesaran dan pengecilan, dan dengan penataan konfigurasi yang handal dapat mengizinkan Cheat Engine untuk menggerakan mouse untuk mendapatkan tekstur tertentu ke pusat, hal ini biasa digunakan untuk membuat Aimbots.