CPU
afriyanto


A. Pengertian CPU
      CPU (Central Processing Unit) adalah otak atau sumber dari komputer yang mengatur dan memproses seluruh kerja komputer. CPU ini berbentuk IC yang diberi nama sesuai dengan tipenya, misalnya 8088 untuk PC XT dan 80286 untuk PC AT,Pentium IV dan sebagainya. Karena CPU ini berada pada suatu board (papan) yang disebut motherboard dan terletak dalam kotak (casing), sekarang ini orang jadi cenderung menyebut kotak berisi catu daya, disk drive dan motherboard sebagai CPU/ kotak CPU. Di dalam kotak CPU biasanya terdapat 2 buah disket drive yang diberi nama disket drive A dan disket drive B. selain disket drive ada juga yang mempunyai hard disk dan CD ROM.
B. Fungsi CPU
      Fungsi utama CPU adalah menjalankan program-program yang disimpan di memori utama. Hal ini dilakukan dengan cara mengambil instruksi-instruksi dari memori utama dan mengeksekusinya satu persatu sesuai dengan alur perintah. Pekerjaan ini dilakukan dalam dua tahapan yaitu membaca instruksi (fetch) dan melaksanakan instruksi tersebut (execute). Proses membaca dan melaksankan ini dilakukan berulang-ulang sampai semua instruksi yang terdapat di memori utama dijalankan atau komputer dimatikan. Proses ini dikenal juga sebagai siklus fetch-eksekusi.

afriyanto

Arsitektur Set Instruksi dan Teknik Pengalamatan Satu hal yang baik perancang komputer maupun pemrogram komputer sama-sama dapat merasakan manfaat mesin adalah set instruksi mesin. Dari sudut pandang perancang, set instruksi mesin menyediakan fungsi-fungsi CPU, yaitu dengan mengimplementasikan set instruksi mesin. Sedangkan dari sudut pandang pengguna, pengguna yang membuat program dalam bahasa mesin, akan merasakan manfaat register dan struktur memori, jenis data yang secara langsung didukung oleh mesin dan fungsi ALU.
Karakteristik-Karakteristik Instruksi Mesin Operasi CPU ditentukan oleh instruksi-instruksi yang dieksekusinya. Instruksi-instruksi ini dikenal sebagai instruksi mesin (machine instruction) atau instruksi komputer (computer instruction) CPU dapat melakukan bermacam-macam fungsi, dan fungsi ini direfleksikan dalam berbagai instruksi CPU. Kumpulan fungsi yang dapat dieksekusi CPU disebut set instruksi (instruction set) CPU.
     

Arsitektur set intruksi berupa jenis intruksi teknik pengalamatan, system bust, CPU dan I/O

Set Intruksi Mode & Format Pengalamatan

ARSITEKTUR SET INSTRUKSI

MATERI OR-AR KOMPUTER


KARAKTERISTIK DAN FUNGSI SET INSTRUKSI

* Operasi dari CPU ditentukan oleh instruksi-instruksi yang dilaksanakan atau dijalankannya. Instruksi ini sering disebut sebagai instruksi mesin (mechine instructions) atau instruksi komputer (computer instructions).
* Kumpulan dari instruksi-instruksi yang berbeda yang dapat dijalankan oleh CPU disebut set Instruksi (Instruction Set).

ELEMEN-ELEMEN DARI INSTRUKSI MESIN (SET INSTRUKSI)

* Operation Code (opcode) : menentukan operasi yang akan dilaksanakan
* Source Operand Reference : merupakan input bagi operasi yang akan dilaksanakan
* Result Operand Reference : merupakan hasil dari operasi yang dilaksanakan
* Next instruction Reference : memberitahu CPU untuk mengambil (fetch) instruksi berikutnya setelah instruksi yang dijalankan selesai.

Source dan result operands dapat berupa salah

Satu diantara tiga jenis berikut ini:

* Main or Virtual Memory
* CPU Register
* I/O Device

DESAIN SET INSTRUKSI

Desain set instruksi merupakan masalah yang

sangat komplek yang melibatkan banyak aspek,

diantaranya adalah:

1. Kelengkapan set instruksi

2. Ortogonalitas (sifat independensi

instruksi)

3. Kompatibilitas :

- Source code compatibility

- Object code Compatibility

Selain ketiga aspek tersebut juga melibatkan

hal-hal sebagai berikut:

1. Operation Repertoire: Berapa banyak dan operasi apa saja yang disediakan, dan berapa sulit operasinya

2. Data Types: tipe/jenis data yang dapat olah

Instruction Format: panjangnya, banyaknya alamat, dsb.

3. Register: Banyaknya register yang dapat digunakan

4.Addressing: Mode pengalamatan untuk operand

FORMAT INSTRUKSI

* Suatu instruksi terdiri dari beberapa field yang sesuai dengan elemen dalam instruksi tersebut. Layout dari suatu instruksi sering disebut sebagai Format Instruksi (Instruction Format).

OPCODE

OPERAND REFERENCE

OPERAND REFERENCE


JENIS-JENIS OPERAND

* Addresses (akan dibahas pada addressing modes)
* Numbers : - Integer or fixed point

- Floating point

- Decimal (BCD)

* Characters : - ASCII

- EBCDIC

* Logical Data : Bila data berbentuk binary: 0 dan 1

JENIS INSTRUKSI

* Data processing: Arithmetic dan Logic Instructions
* Data storage: Memory instructions
* Data Movement: I/O instructions
* Control: Test and branch instructions

TRANSFER DATA

* Menetapkan lokasi operand sumber dan operand tujuan.
* Lokasi-lokasi tersebut dapat berupa memori, register atau bagian paling atas daripada stack.
* Menetapkan panjang data yang dipindahkan.
* Menetapkan mode pengalamatan.
* Tindakan CPU untuk melakukan transfer data adalah :

a. Memindahkan data dari satu lokasi ke lokasi lain.

b. Apabila memori dilibatkan :

Menetapkan alamat memori.

Menjalankan transformasi alamat memori virtual ke alamat

memori aktual.

Mengawali pembacaan / penulisan memori

Operasi set instruksi untuk transfer data :

* MOVE : memindahkan word atau blok dari sumber ke tujuan
* STORE : memindahkan word dari prosesor ke memori.
* LOAD : memindahkan word dari memori ke prosesor.
* EXCHANGE : menukar isi sumber ke tujuan.
* CLEAR / RESET : memindahkan word 0 ke tujuan.
* SET : memindahkan word 1 ke tujuan.
* PUSH : memindahkan word dari sumber ke bagian paling atas stack.
* POP : memindahkan word dari bagian paling atas sumber

ARITHMETIC

* Tindakan CPU untuk melakukan operasi arithmetic :

1. Transfer data sebelum atau sesudah.

2. Melakukan fungsi dalam ALU.

3. Menset kode-kode kondisi dan flag.

* Operasi set instruksi untuk arithmetic :

1. ADD : penjumlahan 5. ABSOLUTE

2. SUBTRACT : pengurangan 6. NEGATIVE

3. MULTIPLY : perkalian 7. DECREMENT

4. DIVIDE : pembagian 8. INCREMENT

Nomor 5 sampai 8 merupakan instruksi operand tunggal.

LOGICAL

* Tindakan CPU sama dengan arithmetic
* Operasi set instruksi untuk operasi logical :

1. AND, OR, NOT, EXOR

2. COMPARE : melakukan perbandingan logika.

3. TEST : menguji kondisi tertentu.

4. SHIFT : operand menggeser ke kiri atau kanan menyebabkan

konstanta pada ujung bit.

5. ROTATE : operand menggeser ke kiri atau ke kanan dengan

ujung yang terjalin.

CONVERSI

* Tindakan CPU sama dengan arithmetic dan logical.
* Instruksi yang mengubah format instruksi yang beroperasi terhadap format data.
* Misalnya pengubahan bilangan desimal menjadi bilangan biner.
* Operasi set instruksi untuk conversi :

1. TRANSLATE : menterjemahkan nilai-nilai dalam suatu bagian

memori berdasrkan tabel korespodensi.

2. CONVERT : mengkonversi isi suatu word dari suatu bentuk

ke bentuk lainnya.

INPUT / OUPUT

* Tindakan CPU untuk melakukan INPUT /OUTPUT :

1. Apabila memory mapped I/O maka menentukan alamat

memory mapped.

2. Mengawali perintah ke modul I/O

* Operasi set instruksi Input / Ouput :

1. INPUT : memindahkan data dari pernagkat I/O tertentu ke

tujuan

2. OUTPUT : memindahkan data dari sumber tertentu ke

perangkat I/O

3. START I/O : memindahkan instruksi ke prosesor I/O untuk

mengawali operasi I/O

4. TEST I/O : memindahkan informasi dari sistem I/O ke tujuan

TRANSFER CONTROL

* Tindakan CPU untuk transfer control :

Mengupdate program counter untuk subrutin , call / return.

* Operasi set instruksi untuk transfer control :

1. JUMP (cabang) : pemindahan tidak bersyarat dan memuat PC

dengan alamat tertentu.

2. JUMP BERSYARAT : menguji persyaratan tertentu danmemuat

PC dengan alamat tertentu atau tidak

melakukan apa tergantung dari

persyaratan.

3. JUMP SUBRUTIN : melompat ke alamat tertentu.

4. RETURN : mengganti isi PC dan register lainnya yang berasal

dari lokasi tertentu.

5. EXECUTE : mengambil operand dari lokasi tertentu dan

mengeksekusi sebagai instruksi

6. SKIP : menambah PC sehingga melompati instruksi

berikutnya.

7. SKIP BERSYARAT : melompat atau tidak melakukan apa-apa

berdasarkan pada persyaratan

8. HALT : menghentikan eksekusi program.

9. WAIT (HOLD) : melanjutkan eksekusi pada saat persyaratan

dipenuhi.

10. NO OPERATION : tidak ada operasi yang dilakukan.

CONTROL SYSTEM

* Hanya dapat dieksekusi ketika prosesor berada dalam keadaan khusus tertentu atau sedang mengeksekusi suatu program yang berada dalam area khusus, biasanya digunakan dalam sistem operasi.
* Contoh : membaca atau mengubah register kontrol.

JUMLAH ALAMAT (NUMBER OF ADDRESSES)

* Salah satu cara tradisional untuk menggambarkan arsitektur prosessor adalah dengan melihat jumlah alamat yang terkandung dalam setiap instruksinya.

* Jumlah alamat maksimum yang mungkin diperlukan dalam sebuah instruksi :

1. Empat Alamat ( dua operand, satu hasil, satu untuk alamat

instruksi berikutnya)

2. Tiga Alamat (dua operand, satu hasil)

3. Dua Alamat (satu operand merangkap hasil, satunya lagi

operand)

4. Satu Alamat (menggunakan accumulator untuk menyimpan

operand dan hasilnya)

Macam-macam instruksi menurut jumlah operasi yang dispesifikasikan

1. O – Address Instruction

2. 1 – Addreess Instruction.

3. N – Address Instruction

4. M + N – Address Instruction

Macam-macam instruksi menurut sifat akses terhadap memori atau register

1. Memori To Register Instruction

2. Memori To Memori Instruction

3. Register To Register Instruction


ADDRESSING MODES

Jenis-jenis addressing modes (Teknik

Pengalama-tan) yang paling umum:

* Immediate
* Direct
* Indirect
* Register
* Register Indirect
* Displacement
* Stack


Tabel Basic Addressing Modes

Mode

Algorithm

Principal Advantage

Principal Disadvantage

Immediate

Operand =

A
http://gha-ronk.blogspot.com/2010/11/arsitektur-set-intruksi.html


afriyanto
Perbedaan Organisasi Komputer dengan Arsitektur Komputer

Arsitektur Komputer
Atribut–atribut sistem komputer yang terkait dengan seorang programmer
Contoh: set instruksi, aritmetika yang digunakan,  teknik pengalamatan, mekanisme I/O
Organisasi Komputer
 Bagian yang terkait erat dengan unit–unit operasional
 Contoh: teknologi hardware, perangkat antarmuka, teknologi memori, sistem memori, dan sinyal–sinyal kontrol

Komputer adalah sebuah mesin elektronik yang secara cepat
menerima informasi masukan digital dan mengolah informasi
tersebut menurut seperangkat instruksi yang tersimpan dalam
komputer dan menghasilkan keluaran informasi yang dihasilkan
        setelah diolah.

Organisasi Komputer adalah bagian yang terkait erat dengan
unit–unit operasional dan interkoneksi antar komponen penyusun
sistem komputer dalam merealisasikan aspek arsitekturalnya.
Arsitektur Komputer lebih cenderung pada kajian atribut–atribut
        sistem komputer yang terkait dengan seorang programmer.
Struktur internal komputer meliputi: Central Processing Unit(CPU),
        Memori Utama, I/O, Sistem Interkoneksi.
Struktur internal CPU meliputi: Control Unit, Aritmetic And Logic
        Unit(ALU), Register, CPU Interkoneksi.
Fungsi dasar sistem komputer adalah Fungsi Operasi Pengolahan
Data, Penyimpanan Data, Fungsi Operasi Pemindahan Data,
        Fungsi Operasi Kontrol.


Organisasi Vs Arsitektur
Ilustrasi, perbedaan antara arsitektur dan organisasi, pabrik komputer menawarkan sekelompok model komputer, yang semuanya memiliki arsitektur yang sama tetapi dengan organisasi yang berbeda.

Akibatnya, model – model yang berbeda akan memiliki harga dan karakteristik kinerja yang berbeda. Selain itu suatu arsitektur dapat bertahan selama bertahun – tahun dan meliputi sejumlah model komputer yang berbeda, namun organisasinya dapat berubah – ubah sesuai seiring dengan perkembangan teknologi.

afriyanto

ETIKA MENULIS DI INTERNET

Dalam penulisan blog kali ini, saya akan membahas mengenai Etika Menulis di Internet. Ternyata, dalam menulis di internet, kita dihadapkan pada aturan-aturan yang wajib kita patuhi sebagai syarat untuk menulis di internet. Untuk lebih jelasnya, silahkan simak tips dibawah ini :

Dalam hal ini etika menulis di internet tidak begitu saja di lakukan dengan sesuka hati anda dalam menulis. karena apapun yang kita lakukan jika tidak melakukannya dengan etika maka tidak akan baik hasilnya malah itu bisa menjadi malapetaka untuk kita.
Di dunia maya aturan-aturan atau kaidah hukum bersifat tertulis maupun tidak tertulis. Aturan tidak tertulis bisa berupa pernyataan sikap dari pembaca yang membaca informasi di blog, email, atau milis yang diwujudkan dalam bentuk komentar-komentar terhadap tulisan penulis, bila tulisan itu tidak berkenan atau bertentangan dengan nilai atau etika biasanya si penulis akan dihujat oleh pembaca melalui fasilitas komentar atau email balik bila melalui email atau milis. Sedangkan aturan tertulis bisa berupa peringatan yang ditulis oleh pembuat blog atau administrator milis agar tercipta komunikasi yang sehat, sopan, dan saling menghargai. Misal Tidak boleh menulis dengan menggunakan capslock, karena sama saja seperti memaki, tidak boleh menulis hal-hal yang berbau SARA, Pornografi dan sebagainya, dan bila tulisan adalah hasil karya orang lain harap dicantumkan nama penulis dan alamat URLnya.
Di Indonesia aturan atau kaidah hukum mengenai etika menulis di internet pun sudah di undang-undangkan yang ditetapkan tahun 2008. Aturan itu adalah Undang-undang Informasi dan Transaksi Elektronik atau UU ITE.
Pada UU ITE perbuatan yang dilarang menyangkut isi tulisan tertuang pada BAB VII pasal 27 ayat satu sampai empat dan pasal 28 ayat satu dan dua.
Pasal 27
(1) Setiap Orang dengan sengaja dan tanpa hak mendistribusikan dan/atau mentransmisikan dan/ataumembuat dapat diaksesnya Informasi Elektronik dan/atau Dokumen Elektronik yang memiliki muatan yang melanggar kesusilaan.
(2) Setiap Orang dengan sengaja dan tanpa hak mendistribusikan dan/atau mentransmisikan dan/ataumembuat dapat diaksesnya Informasi Elektronik dan/atau Dokumen Elektronik yang memiliki muatanperjudian.
(3) Setiap Orang dengan sengaja dan tanpa hak mendistribusikan dan/atau mentransmisikan dan/ataumembuat dapat diaksesnya Informasi Elektronik dan/atau Dokumen Elektronik yang memiliki muatanpenghinaan dan/atau pencemaran nama baik.
(4) Setiap Orang dengan sengaja dan tanpa hak mendistribusikan dan/atau mentransmisikan dan/ataumembuat dapat diaksesnya Informasi Elektronik dan/atau Dokumen Elektronik yang memiliki muatanpemerasan dan/atau pengancaman.
Pasal 28
(1) Setiap Orang dengan sengaja dan tanpa hak menyebarkan berita bohong dan menyesatkan yang mengakibatkan kerugian konsumen dalam Transaksi Elektronik.
(2) Setiap Orang dengan sengaja dan tanpa hak menyebarkan informasi yang ditujukan untuk
menimbulkan rasa kebencian atau permusuhan individu dan/atau kelompok masyarakat tertentu berdasarkan atas suku, agama, ras, dan antargolongan (SARA).
Mengenai ketentuan pidananya tertuang pada BAB XI Pasal 45 ayat 1 dan 2
Pasal 45
(1) Setiap Orang yang memenuhi unsur sebagaimana dimaksud dalam Pasal 27 ayat (1),
ayat (2), ayat (3), atau ayat (4) dipidana dengan pidana penjara paling lama 6 (enam) tahun dan/atau denda paling banyak Rp1.000.000.000,00 (satu miliar rupiah).
(2) Setiap Orang yang memenuhi unsur sebagaimana dimaksud dalam Pasal 28 ayat (1) atau ayat (2) dipidana dengan pidana penjara paling lama 6 (enam) tahun dan/atau denda paling banyak Rp1.000.000.000,00 (satu miliar rupiah).
Dari sedikit ulasan diatas,ada baiknya mulai sekarang kita lebih berhati-hati lagi dalam menulis tulisan di internet ,karena akan berdampak buruk pada diri kita sendiri bahkan akan membawa kita kedalam jalur hukum yang serius,mulai sekarang marilah kita berhati-hati dalam menulis diinternet.


http://aditiodoank.wordpress.com/2011/02/22/etika-menulis-diinternet/
afriyanto

#include
#include
#define servo PORTB.0

// Declare your global variables here
void cw()
{ servo=1;
delay_ms(1);
servo=0;
delay_ms(20);
}

void ccw()
{ servo=1;
delay_ms(2);
servo=0;
delay_ms(20);
}

void main(void)
{
// Declare your local variables here

// Input/Output Ports initialization
// Port A initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTA=0×00;
DDRA=0×00;

// Port B initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=Out
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=0
PORTB=0×00;
DDRB=0×01;

// Port C initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTC=0×00;
DDRC=0×00;

// Port D initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTD=0×00;
DDRD=0×00;

// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: Timer 0 Stopped
// Mode: Normal top=FFh
// OC0 output: Disconnected
TCCR0=0×00;
TCNT0=0×00;
OCR0=0×00;

// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: Timer 1 Stopped
// Mode: Normal top=FFFFh
// OC1A output: Discon.
// OC1B output: Discon.
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer 1 Overflow Interrupt: Off
// Input Capture Interrupt: Off
// Compare A Match Interrupt: Off
// Compare B Match Interrupt: Off
TCCR1A=0×00;
TCCR1B=0×00;
TCNT1H=0×00;
TCNT1L=0×00;
ICR1H=0×00;
ICR1L=0×00;
OCR1AH=0×00;
OCR1AL=0×00;
OCR1BH=0×00;
OCR1BL=0×00;

// Timer/Counter 2 initialization
// Clock source: System Clock
// Clock value: Timer 2 Stopped
// Mode: Normal top=FFh
// OC2 output: Disconnected
ASSR=0×00;
TCCR2=0×00;
TCNT2=0×00;
OCR2=0×00;

// External Interrupt(s) initialization
// INT0: Off
// INT1: Off
// INT2: Off
MCUCR=0×00;
MCUCSR=0×00;

// Timer(s)/Counter(s) Interrupt(s) initialization
TIMSK=0×00;

// Analog Comparator initialization
// Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off
ACSR=0×80;
SFIOR=0×00;

while (1)
{
// Place your code here
cw(); –>jika ingin berputar kebalikannya ganti “cw();“ menjadi “ccw();“ )
};
}



sumber : http://catatansaad.wordpress.com/
afriyanto

Keterangan : Start jika dimasukkan 500 akan memasuki stage yang 500 kemungkinan yang ada di stage 500, seandainya memasukkan uang sebanyak 6 kali menjadi 3000 lalu barang akan keluar ,lalu jika ingin membatalkan transaksi uang akan kembali, jika kita memasukan uang 1000 sebanyak 1 atau 2 kali maka akan masuk ke stage 1500 dan 2500 ,kemudian mesin meminta uang sebanyak 500, jika iya barang akan keluar dan jika tidak barang akan kembali.
Jika kita memasukkan uang 1000 akan memasuki stage 1000 jika tidak ada kegiatan akan looping ke stage 1000, jika membatalkan uang kembali.
Kondisi di stage 1000 jika uang 500 sebanyak 2 kali dan uang 1000 sebanyak 2 kali , mka akan ada pilihan jika membatalkan uang kembali dan jika meng iyakan barang akan keluar.
Jika akan memasukkan uang 1000 sebanyak 3 kali maka jika membatalkan uang akan kembali dan jika meng iyakan barang akan keluar.