template


Rabu, 19 November 2014

Tugas Softskill 3 Teori Organisasi Umum 1

Penghargaan (Reward) dan Hukuman(Punishment) dalam Organisasi Perusahaan


1. PENDAHULUAN
    Pada suatu organisasi sangat diperlukan aturan dan hukuman serta penghargaan(imbalan) dimana penghargaan dalam suatu organisasi itu penting karena kita memang menghargai mereka yang sudah berupaya mengubah cara kerja mereka. Penghargaan juga akan memicu orang-orang untuk melakukan yang terbaik. Sebaiknya Penghargaan bukan untuk mereka yang paling di dalam bidangnya melainkan berikan target dan berikan Penghargaan buat mereka yang melampui target yang ada. Penghargaan juga berfungsi untuk memperlihatkan bahwa kita sebagai atasan menghargai kinerja mereka yang sesuai dengan aturan yang berlaku.
Sedangkan aturan dan hukuman berfungsi sebagai suatu alat pengendali agar suatu kinerja dalam suatu organisasi tersebut dapat berjalan dengan baik. Jika suatu organisasi aturan dan hukuman tidak diterapkan maka suatu organisasi tersebut tidak akan berjalan dengan baik dan akan menimbulkan konflik kepentingan baik antar individu ataupun antar organisasi. Untuk mengefektifkan peraturan tersebut butuh kesadaran untuk mematuhi peraturan yang sudah diterapkan dalam sebuah organisasi tersebut, maka dibuatlah hukuman agar kita mematuhi hukuman tersebut. Hukuman tersebut juga berlaku dalam bersosialisasi contohnya dalam berorganisasi. Perlunya hukuman dalam organisasi agar pelaku dalam organisasi tersebut dapat merubah perilaku pegawai, yaitu dengan mempertimbangkan: Waktu, Intensitas, Jadwal, Klarifikasi, dan Impersonalitas (tidak bersifat pribadi).

2. PEMBAHASAN
2.1 Penghargaan (Reward)
2.1.1 Pengertian Penghargaan (Reward)
         Penghargaan ialah sesuatu yang diberikan pada perorangan atau kelompok jika mereka melakukan suatu keulungan di bidang tertentu. Penghargaan biasanya diberikan dalam bentuk medali, piala, gelar, sertifikat, plaket atau pita. Suatu penghargaan kadang-kadang disertai dengan pemberian hadiah berupa uang seperti Hadiah Nobel untuk kontribusi terhadap masyarakat, dan Hadiah Pulitzer untuk penghargaan bidang literatur. Penghargaan bisa juga diberikan oleh masyarakat karena pencapaian seseorang tanpa hadiah apa-apa.
Fungsi Penghargaan
Ada tiga fungsi penting dari penghargaan yang berperan besar bagi pembentukan tingkah laku yang diharapkan:
• Memperkuat motivasi untuk memacu diri agar mencapai prestasi
• Memberikan tanda bagi seseorang yang memiliki kemampuan lebih
• Bersifat Universal

2.1.2Pentingnya Penghargaan pada Organisasi
        Reward adalah ganjaran, hadiah, penghargaan atau imbalan yang bertujuan agar seseorang menjadi lebih giat lagi usahanya untuk memperbaiki atau meningkatkan kinerja yang telah dicapai” (Nugroho, 2006:5).  Menurut Henri Simamora(2004:514) “reward adalah insentif yang mengaitkan bayaran atas dasar untuk dapat meningkatkan produktivitas para karyawan guna mencapai keunggulan yang kompetitif”. Dengan adanya pendapat para ahli diatas maka dapat disimpulkan bahwa pemberian reward dimaksudkan sebagai dorongan agar karyawan mau bekerja dengan lebih baik sehingga dapat meningkatkan kinerja karyawan.
Menurut Ivancevich, Konopaske dan Matteson dalam Gania (2006:226) tujuan utama dari program reward adalah:
a) Menarik orang yang memiliki kualifikasi untuk bergabung dengan organisasi
b) Mempertahankan karyawan agar terus datang untuk bekerja
c) Mendorong karyawan untuk mencapai tingkat kinerja yang tinggi

2.2 Hukuman (Punishment)
2.2.1 Pengertian Hukuman (Punishment)
         Hukuman (punishment) adalah sebuah cara untuk mengarahkan sebuah tingkah laku agar sesuai dengan tingkah laku yang berlaku secara umum. Dalam hal ini, hukuman diberikan ketika sebuah tingkah laku yang tidak diharapkan ditampilkan oleh orang yang bersangkutan atau orang yang bersangkutan tidak memberikan respon atau tidak menampilkan sebuah tingkah laku yang diharapkan.
Dalam menjalankan organisasi diperlukan sebuah aturan dan hukum yang berfungsi sebagai alat pengendali agar kinerja pada organisasi tersebut dapat berjalan dengan baik. Jika aturan dan hukum dalam suatu organisasi tidak berjalan baik maka akan terjadi konflik kepentingan baik antar individu maupun antar organisasi.
Pada beberapa kondisi tertentu, penggunaan hukuman dapat lebih efektif untuk merubah perilaku pegawai, yaitu dengan mempertimbangkan: Waktu, Intensitas, Jadwal, Klarifikasi, dan Impersonalitas (tidak bersifat pribadi).
Untuk mengembangkan suatu program yang menggunakan hukuman secara efektif.

- Fungsi Hukuman
Ada tiga fungsi penting dari hukuman yang berperan besar bagi pembentukan tingkah laku yang diharapkan:
• Membatasi perilaku. Hukuman menghalangi terjadinya pengulangan tingkah laku yang tidak diharapkan.
• Bersifat mendidik.
• Memperkuat motivasi untuk menghindarkan diri dari tingkah laku yang tidak diharapkan
Sedangkan aturan dan hukum berfungsi sebagai suatu alat pengendali agar suatu kinerja dalam suatu organisasi tersebut dapat berjalan dengan baik.

2.2.2 PENTINGNYA HUKUMAN DALAM ORGANISASI
Menurut Mangkunegara (2000:130) “Punishment adalah ancaman hukuman yang bertujuan untuk memperbaiki kinerja karyawan pelanggar, memelihara peraturan yang berlaku dan memberikan pelajaran kepada pelanggar”.Menurut Ivancevich, Konopaske dan Matteson dalam Gania (2006:226) “Punishment didefinisikan sebagai tindakan menyajikan konsekuensi yang tidak menyenangkan atau tidak diinginkan sebagai hasil dari dilakukanya perilaku tertentu”. Punishment merupakan konsekuensi dari perilaku yang negatif, tujuan pemberian punishment ini bermacam-macam, salah satunya adalah teori tujuan pemberian punishment yang dikemukakan oleh M. Ngalim Purwanto MP(1993:238) sebagai berikut:
a. Teori Pembalasan
Hukuman diadakan sebagai pembalasan terhadap kelalaian dan pelanggran yang telah dilakukan seseorang (karyawan).

b. Teori Perbaikan
Hukuman diberikan untuk membasmi kejahatan, untuk memperbaiki si pelanggar agar jangan berbuat kesalahan itu lagi.

c. Teori Perlindungan
Hukuman diadakan untuk melindungi masyarakat dari perbuatan- perbuatan yang tidak wajar.Dengan adanya hukuman ini, masyarakat dapat dilindungi dari kejahatan- kejahatan yang telah dilakukan olehsi pelanggar.

d. Teori Ganti Rugi
Hukuman diadakan untuk mengganti kerugian- kerugian yang telah diderita akibat dari kejahatan- kejahatan atau pelanggaran- pelanggaran itu.

e. Teori Menakut- nakuti
Hukuman diadakan untuk menimbulkan perasaan takut kepada si pelanggar akibat perbuatannya yang melanggar itu sehingga selalu takut melakukan perbuatan itu dan mau meninggalkannya.

2.3 Implikasi Penghargaan dan Hukuman pada Organisasi Perusahaan
     Manajemen sumber daya manusia merupakan program, aktivitas untuk mendapatkan, mengembangkan, memelihara dan mendayagunakan sumber daya manusia untuk mendukung perusahaan mencapai tujuannya. Dalam mencapai tujuan perusahaan, dibutuhkan sumber daya manusia (karyawan) yang berkualitas. Kualitas atau kinerja karyawan harus selalu dipelihara dan ditingkatkan,salah satu caranya adalah dengan penerapan reward dan punishment. Perusahaan menyadari demi menjaga dan meningkatkan kinerja karyawan perusahaan harus segera berbenah dalam pengelolaan manajemen yang profitable dan professional, salah satu caranya adalah dengan menerapkan reward dan punishment. Diharapkan dengan adanya penerapan reward dan punishment kinerja karyawan dapat ditingkatkan dan perusahaan dapat mencapai tujuanya secara keseluruhan.

3. Kesimpulan :
    Untuk meningkatkan kinerja organisasi dan mencapai tujuan organisasi diperlukan adanya suatu penghargaan dan hukuman. Karena dengan adanya penghargaan dan hukuman akan memberikan motivasi tersendiri bagi setiap individu di dalam organisasi sehingga kinerja individu akan meningkat dan akan berdampak pada tujuan organisasi yang dapat dicapai dengan optimal.

4. Referensi :

Nama   : Muhammad David Siregar
NPM   : 15113862
Kelas   : 2KA04

Kamis, 06 November 2014

Computer Arithmatic (Tugas Peng.Org.&Arst Komputer)

Arithmetic Logic Unit (ALU)

- Pengertian Arithmatic and Logic Unit (ALU)
Arithmatic and Logic Unit (ALU), adalah salah satu bagian/komponen dalam sistem di dalam sistem komputer berfungsi melakukan operasi/perhitungan aritmatika dan logika (seperti penjumlahan, pengurangan dan beberapa logika lain), AlU bekerja besama-sama memori. Dimana hasil dari perhitungan di dalam ALU di simpan ke dalam memori. Perhitungan dalam ALU menggunakan kode biner, yang merepresentasikan instruksi yang akan dieksekusi (opcode) dan data yang diolah (operand). ALU biasanya menggunakan sistem bilangan biner two’s complement.ALU mendapat data dari register. Kemudian data tersebut diproses dan hasilnya akan disimpan dalam register tersendiri yaitu ALU output register, sebelum disimpan dalam memori.

- SEJARAH Arithmatic and Logic Unit (ALU)
Aritmetika  yang terbatas pada jumlah yang sangat kecil artifak kecil yang menunjukkan konsep yang jelas penambahan (+) dan pengurangan (-), yang paling terkenal menjadi tulang Ishango dari Afrika tengah, datang dari suatu tempat antara 20.000 dan 18.000 SM.
Jelas bahwa Babel memiliki pengetahuan yang kokoh dari hampir semua aspek aritmetika dasar oleh 1800 SM, sejarawan meskipun hanya bisa menebak metode yang digunakan untuk menghasilkan hasil aritmetika, seperti yang ditunjukkan. Misalnya, dalam tablet tanah liat Plimpton 322, yang muncul menjadi daftar Pythagoras tiga kali lipat, tetapi tanpa kerja untuk menunjukan bagaimana daftar ini awalnya diproduksi. Demikian pula, Mesir Rhin Mathematical Papyrus (berasal dari sekitar 1650 SM, meskipun jelas salinan teks yang lebih tua dari sekitar 1850 SM) menunjukan bukti penambahan (+), pengurangan (-), perkalian (x), dan pembagian (/) yang digunakan dalam sebagian unit sistem.

Nicomachus merangkum filsafat Pythagoras pendekatan angka, dan hubungan mereka satu sama lain, dalam Pengenalan aritmatika. Pada saat ini, operasi aritmatika dasar adalah urusan yang sangat rumit, itu adalah metode yang dikenal sebagai “Metode orang-orang Indian” (Latin Modus Indorum) yang menjadi aritmatika yang kita kenal sekarang. Aritmatika India jauh lebih sederhana daripada aritmatika Yunani karena kesederhanaan system angka India, yang memiliki nol dan notasi nilai tempat. Abad ke - 7 Syria Severus Sebokht uskup disebutkan metode ini dengan kekaguman, namun menyatakan bahwa Metode dari India ini tak tertuliskan. Orang-orang Arab belajar metode baru ini dan menyebutkan  Fibonacci (juga dikenal dengan Leonardo dari Paris) memperkenalkan “Metode dari Indian” ke Eropa pada 1202. Dalam bukunya Liber Abaci, Fibonacci mengatakan bahwa dibandingkan dengan metode baru ini, semua metode lain telah kesalahan. Dalam Abad Pertengahan. Aritmatika adalah satu dari tujuh seni liberal diajarkan di universitas.

Pada saat sekarang ini sebuah chip/IC dapat mempunyai beberapa ALU sekaligus yang memungkinkan untuk melakukan kalkulasi secara paralel. Salah satu chip ALU yang sederhana (terdiri dari 1 buah ALU) adalah IC 74LS382/HC382ALU (TTL). IC ini terdiri dari 20 kaki dan beroperasi dengan 4x2 pin data input (pinA dan pinB) dengan 4 pin keluaran (pinF). Operasi logika meliputi perbandingan dua buah elemen logika dengan menggunakan operator logika, yaitu :

• Sama dengan (=)
• Tidak sama dengan ( <> )
• Kurang dari ( < )
• Kurang atau sama dengan dari ( <= )
• Lebih besar dari ( > )
• Lebih besar atau sama dengan dari ( >= )

Cara Pendesinan pada ALU hampir sama dengan mendesain enkoder, multiplexer, dan di Multiplexer. Rangkaian utama yang digunakan untuk melakukan perhitungan ALU adalah Adder. Rangkaian pada ALU (Arithmetic and Logic Unit) yang digunakan untuk menjumlahkan bilangan dinamakan dengan Adder. Adder digunakan untuk memproses operasi aritmetika, Adder juga disebut rangkaian kombinasional aritmatika.

Ada 3 jenis adder:
1.Rangkaian Adder dengan menjumlahkan dua bit disebut Half Adder.
2.Rangkaian Adder dengan menjumlahkan tiga bit disebut Full Adder.
3.Rangkain Adder dengan menjumlahkan banyak bit disebut Paralel Adder

A. Half Adder
Rangkaian Half Adder merupakan dasar penjumlahan bilangan Biner yang terdiri dari satu bit, oleh karena itu dinamai Penjumlah Tak Lengkap.
1. jika A = 0 dan B = 0 dijumlahkan, hasilnya S ( Sum ) = 0.
2. jika A = 0 dan B = 1 dijumlahkan, hasilnya S ( Sum ) = 1.
3. jika A = 1 dan B = 1 dijumlahkan, hasilnya S ( Sum ) = 0
jika A = 1 dan B =1 dijumlahkan, hasilnya S ( Sum ) = 0. dengan nilai pindahan cy(Carry Out) = 1
Dengan demikian, half adder memiliki 2 masukan ( A dan B ) dan dua keluaran ( S dan Cy ).

Tabel Kebenaran Half adder :
A B S C
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1

B. FULL ADDER
Sebuah Full Adder menjumlahkan dua bilangan yang telah dikonversikan menjadi bilangan-bilangan biner. Masing-masing bit pada posisi yang sama saling dijumlahkan. Full Adder sebagai penjumlah pada bit-bit selain yang terendah. Full Adder menjumlahkan dua bit input ditambah dengan nilai Carry-Out dari penjumlahan bit sebelumnya. Output dari Full Adder adalah hasil penjumlahan (Sum) dan bit kelebihannya (carry-out).

C. PARALEL ADDER
Rangkaian Parallel Adder adalah rangkaian penjumlah dari dua bilangan yang telah dikonversikan ke dalam bentuk biner. Anggap ada dua buah register A dan B, masing-masing register terdiri dari 4 bit biner : A3A2A1A0 dan B3B2B1B0.
Rangkaian Parallel Adder terdiri dari Sebuah Half Adder (HA) pada Least Significant Bit (LSB) dari masing-masing input dan beberapa Full Adder pada bit-bit berikutnya. Prinsip kerja dari Parallel Adder adalah sebagai berikut : penjumlahan dilakukan mulai dari LSB-nya. Jika hasil penjumlahan adalah bilangan desimal “2” atau lebih, maka bit kelebihannya disimpan pada Cout, sedangkan bit di bawahnya akan dikeluarkan pada Σ. Begitu seterusnya menuju ke Most Significant Bit (MSB)nya.

Bilangan Integer
Bilangan integer (bulat) tidak dikenal oleh komputer dengan basis 10. Agar komputer mengenal bilangan integer, maka para ahli komputer mengkonversi basis 10 menjadi basis 2. Seperti kita ketahui, bahwa bilangan berbasis 2 hanya terdiri atas 1 dan 0. Angka 1 dan 0 melambangkan bahwa 1 menyatakan adanya arus listrik dan 0 tidak ada arus listrik. Namun, untuk bilangan negatif, komputer tidak mengenal simbol (-). Komputer hanya mengenal simbol 1 dan 0.

Untuk mengenali bilangan negatif, maka digunakan suatu metode yang disebut dengan Sign Magnitude Representation. Metode ini menggunakan simbol 1 pada bagian paling kiri (most significant) bit. Jika terdapat angka 18 = (00010010)b, maka -18 adalah (10010010)b. Akan tetapi, penggunaan sign-magnitude memiliki 2 kelemahan. Yang pertama adalah terdaptnya -0 pada sign magnitude[0=(00000000)b; -0=(10000000)b]. Seperti kita ketahui, angka 0 tidak memiliki nilai negatif sehingga secara logika, sign-magnitude tidak dapat melakukan perhitungan aritmatika secara matematis. Yang kedua adalah, tidak adanya alat atau software satupun yang dapat mendeteksi suatu bit bernilai satu atau nol karena sangat sulit untuk membuat alat seperti itu. Oleh karena itu, penggunaan sign magnitude pada bilangan negatif tidak digunakan, akan tetapi diganti dengan metode 2′s complement.

Metode 2′s complement adalah metode yang digunakan untuk merepresentasikan bilangan negatif pada komputer. Cara yang digunakan adalah dengan nilai terbesar dari biner dikurangin dengan nilai yang ingin dicari negatifnya. Contohnya ketika ingin mencari nilai -18, maka lakukan cara berikut:
1. Ubah angka 18 menjadi biner (00010010)b
2. Karena biner tersebut terdiri dari 8 bit, maka nilai maksimumnya adalah 11111111
3. Kurangkan nilai maksimum dengan biner 18 -> 11111111 – 00010010 = 11101101
4. Kemudian, dengan sentuhan terakhir, kita tambahkan satu -> 11101101 + 00000001 = 11101110

Dengan metode 2′s complement, kedua masalah pada sign magnitude dapat diselesaikan dan komputer dapat menjalankan. Namun, pada 2′s complement, nilai -128 pada biner 8 bit tidak ditemukan karena akan terjadi irelevansi. Maka untuk rentang 8 bit adalah -2^7 sampai dengan 2^7-1. Penjumlahan dan pengurangan pada bilangan biner sama dengan penjumlahan biasa.

Floating Point
Floating Point atau bilangan berkoma dalam ALU diubah dalam bentuk biner. Penempatan floating point (pada kasus 32 bit adalah lebar alamat) pada memori tersusun atas 1 bit sign of significant (bernilai 0 jika bilangan tersebut positif dan 1 untuk bilangan negatif), 8 bit biased exponent (menunjukkan bilangan exponennya yang ditambah dengan 11111111), dan 23 bit significant. Langkah-langkah pembuatan floating point pada komputer adalah:
1. Ubah menjadi bilangan biner
2. Ubah (misal) 101.001, maka ubah menjadi 1.01001 x 2^3
3. Ubah pangkat tersebut dalam biner sehingga 1.01001 x 2^11
4. Karena bilangan tersebut adalah positif, maka bit sign magnitude berniai 0 [contoh]
5. Untuk biased exponent, nilai 11 ditambah dengan 11111111 sehingga menjadi 00000010 [bit terdepan dibuang karena hanya 8 bit yang diterima]
6. Bit siginificand diis dengan 01001000000000000000000
maka untuk 101.001, pada memori ditulis: 1 00000010 01001000000000000000000. Untuk penjumlahan dan pengurangan, dilakukan lebih rumit dari uraian di atas.




Integer Representation
Dalam ilmu komputer, istilah "Integer" digunakan untuk merujuk kepada tipe data apapun yang merepresentasikan bilangan bulat, atau beberapa bagian dari bilangan bulat. Disebut juga sebagai Integral Data Type.

Nilai dan Representasinya
Nilai sebuah data dari sebuah tipe data integer adalah nilai bilangan bulat seperti dalam matematika. Representasi data ini merupakan cara bagaimana nilainya disimpan di dalam memori komputer. Tipe data integer terbagi menjadi dua buah kategori, baik itu bertanda (signed) ataupun tidak bertanda (unsigned). Bilangan bulat bertanda mampu merepresentasikan nilai bilangan bulat negatif, sementara bilangan bulat tak bertanda hanya mampu merepresentasikan bilangan bulat positif.
Representasi integer positif di dalam komputer sebenarnya adalah untaian bit, dengan menggunakan sistem bilangan biner. Urutan dari bit-bit tersebut pun bervariasi, bisa berupa Little Endian ataupun Big Endian. Selain ukuran, lebar atau ketelitian (presisi) bilangan bulat juga bervariasi, tergantung jumlah bit yang direpresentasikannya. Bilangan bulat yang memiliki n bit dapat mengodekan 2n. Jika tipe data integer tersebut adalah bilangan bulat tak bertanda, maka jangkauannya adalah dari 0 hingga 2n-1.Dalam sistem bilangan biner,semua bilangan dapat direpresentasikan dengan hanya menggunakan bilangan 0 dan 1, tanda minus, dan tanda titik.
Misalnya: -1101.01012 = -11.312510

Namun untuk keperluan penyimpanan dan pengolahan komputer, kita tidak perlu menggunakan tanda minus dan titik.Hanya bilangan biner (0 dan 1) yang dapatmerepresentasikan bilangan.Bila kita hanya memakai integer non-negatif, maka representasinya akan lebuh mudah.Sebuah word 8-bit dapat digunakan untuk merepresentasikan bilangan 0 hingga 255. Misalnya:
00000000= 0
00000001= 1
00101001 = 41
10000000  = 128
11111111= 225

Umumnya bila sebuah rangkaian n-bit bilangan biner an-1an-2…a1a0 akan diinterpretasikan sebagai unsigned integer A.

Representasi Nilai Tanda
Penggunaan unsigned integer tidak cukup untuk merepresentasikan bilangan integer negatif dan juga bilangan positif integer.Karena itu terdapat beberapa konvesi lainnya yang dapat kita gunakan.Konvesi-konvesi lainnya meliputi perlakuan terhadap bit yang paling berarti (paling kiri) di dalam word bit tanda.Apabila bit paling kiri sama dengan 0 suatu bilangan adalah positif,sedangkan bila bit yang paling kiri sama dengan 1 bilangan bernilai negatif. Bentuk yang paling sederhana representasi yang memakai bit tanda representasi nilai tanda. Pada sebuah word n bit, n – 1 bit yang paling kanan menampung  nilai integer. Misalnya:
+ 18 = 00010010
-  18 = 10010010 (sign-magnitude/nilai-tanda)

Terdapat beberapa kekurangan pada representasi nilai-tanda penambahan dan pengurangan memerlukan pertimbangan baik tanda bilangan ataupun nilai relatifnya agar dapat berjalan pada operasi yang diperlukan.
Kekurangannya lainnya terdapat dua representasi bilangan 0:
+ 010 = 00000000
-  010 = 10000000 (sign-magnitude)

Representasi Komplemen Dua
Representasi komplemen dua ( two’s complement representation)  mengatasi dua buah kekurangan yang terdapat pada representasi nilai- tanda.Penambahan dan pengurangan   nilai-tanda (sign-magnitude) tidak mencukupi dan terdapat dua buah representasi bilangan nol.Representasi komplemen dua menggunakan bit yang paling berarti sebagai bit tanda  memudahkannya untuk mengetahui apakah sebuah integer bernilai positif atau negatif.Representasi ini berbeda dengan representasi nilai-tanda dengan cara menginterpretasikan bit-bit lainnya.Representasi komplemen dua akan lebih mudah dimengerti dengan mendefinisikannya dalam bentuk jumlah bobot bit  seperti telah kita lakukan diatas pada representasi unsigned-magnitude dan sign-magnitude.Bilangan nol akan diidentifikasikan sebagai positif,  memiliki tanda bit 0 dan nilai keseluruhan 0.
Kita dapat melihat bahwa range integer positif yang dapat direpresentasikan mulai 0 (seluruh magnitude bit-nya sama dengan 0) hingga 2n-1-1 (seluruh magnitude bit-nya 1).   bilangan yang lebih besar akan memerlukan bit yang lebih banyak. Sekarang  bilangan negatif A, bit tanda an-1, sama dengan 1. n-1 bit sisanya dapat mengambil salah satu dari 2n-1 nilai.Karena itu, range integer negatif yang dapat direpresentasikan  mulai –1 hingga -2n-1.Hasilnya  assignment yang mudah bagi nilai  untuk membiarkan bit-bit an-1 an-2…a:a0 akan sama dengan bilangan positif 2n-1 –A.

Konversi antara panjang bit yang berlainan
Kadang-kadang kita perlu mengambil sebuah integer n bit dan menyimpannya di dalam m bit, dengan m > n.Pada notasi sign-magnitude  mudah dilaksanakan: cukup memindahkan bit tanda ke posisi terkiri yang baru dan mengisinya dengan nol.Misalnya:

+18 =                        00010010     (sign-magnitude, 8 bit)
+18 =         0000000000010010    (sign-magtitude, 16 bit)
-18 =                          10010010    (sign-magnitude, 8 bit)
-18 =          1000000000010010    (sign-magtitude, 16 bit)

Prosedur di atas tidak berlaku bagi integer negatif komplemen dua. Dengan memakai contoh yang sama:

+18 =                       00010010    (komplemen dua, 8 bit)
+18 =        0000000000010010   (komplemen dua, 16 bit)
-18 =                        10010010    (komplemen dua, 8 bit)
-65.518 =  1000000000010010   (komplemen dua, 16 bit)

Aturan integer komplemen dua adalah untuk memindahkan bit tanda ke posisi terkiri yang baru dan mengisinya dengan salinan-salinan bit tanda.Bilangan positif diisi dengan 0 dan  bilangan negatif isi dengan 1.

-18 =                          10010010    (komplemen dua, 8 bit)
-18 =          1111111100010010    (komplemen dua, 16 bit)

 Tipe data integer mempunyai ukuran 4 byte, dimana 4 byte= (4x8)bit = 32 bit.


Berikut merupakan ukuran data pada format c (dlm byte): :)


 Integer direpresentasikan dengan 2 cara:
* Bilangan tidak negatif (unsigned)
* Bilangan negatif, nol & positif (signed)


Integer Arithmetic

Bagian ini akan membahas fungsi-fungsi aritmatik bilangan dalam representasi komplemen dua:

Negasi      

Pada notasi komplemen dua, pengurangan sebuah bilangan integer dapat dibentuk dengan menggunakan aturan berikut : Anggaplah komplemen Boolean seluruh bit bilangan integer (termasuk bit tanda) Perlakukan hasilnya sebagai sebuah unsigned binary integer, tambahkan 1. Misal : 18 = 00010010 (komplemen dua)
Representasi Integer Positif, Negatif Dan Bilangan 0. Bila sebuah bilangan integer positif dan negatif yang sama direpresentasikan (sign-magnitude), maka harus ada representasi bilangan positif dan negatif yang tidak sama.Bila hanya terdapat sebuah representasi bilangan 0 (komplemen dua), maka harus ada representasi bilangan positifdan negatif yang tidak sama.Pada kasus komplemen dua, terdapat representasi bilangan n-bit untuk -2n, tapi tidak terdapat untuk 2n.

Aturan Untuk Mendeteksi Overflow

Aturan Overflow :
Bila dua buah bilangan ditambahkan, dan keduanya positif atau keduanya negatif, maka akan terjadi overflow bila dan hanya bila hasilnya memiliki tanda yang berlawanan, seperti pada contoh halaman 18 ((e),(f))

Aturan Pengurangan :
Untuk mengurangkan sebuah bilangan (subtrahend) dari bilangan lainnya (minuend), anggaplah komplemen dua subtrahend dan tambahkan hasilnya ke minuend.

Pembulatan
Teknik pembulatan yang sesuai dengan standard IEEE adalah sebagai berikut :
Pembulatan ke Bilangan Terdekat : Hasil dibulatkan ke bilangan terdekat yang dapat direpresentasi.
Pembulatan Ke Arah : Hasil dibulatkan ke atas ke arah tak terhingga positif.
Pembulatan Ke Arah : Hasil dibulatkan ke atas ke arah tak terhingga negatif.
Pembulatan Ke Arah 0 : Hasil dibulatkan ke arah 0


Floating Point Representation
Dalam komputasi floating point menjelaskan metode mewakili perkiraan dari sejumlah nyata dalam cara yang dapat mendukung berbagai nilai . Jumlahnya , secara umum , mewakili sekitar untuk tetap jumlah digit yang signifikan ( mantissa ) dan ditingkatkan menggunakan eksponen .

Dengan asumsi bahwa resolusi terbaik adalah di tahun cahaya , hanya 9 desimal yang paling signifikan digit materi,sedangkan sisanya 30 digit membawa suara murni,dan dengan demikian dapat dengan aman dijatuhkan.Ini merupakan penghematan dari 100 bit penyimpanan data komputer.Alih-alih dari 100 bit,jauh lebih sedikit digunakan untuk mewakili skala ( eksponen ),misalnya 8 bit atau 2 digit desimal.

Istilah floating point mengacu pada fakta bahwa nomor itu radix point (titik desimal,atau lebih umum pada komputer,titik biner) dapat “mengambang”,yang dapat ditempatkan di manapun relatif terhadap angka yang signifikan dari nomor tersebut.Posisi ini diindikasikan sebagai komponen eksponen dalam representasi internal ,dan floating point sehingga dapat dianggap sebagai realisasi komputer notasi ilmiah.Selama bertahun-tahun,berbagai representasi floating-point telah digunakan dalam komputer.Namun, sejak tahun 1990, representasi paling sering ditemui adalah bahwa didefinisikan oleh IEEE 754 standar .    Dalam notasi ilmiah , jumlah yang diberikan ditingkatkan oleh kekuatan 10 sehingga terletak dalam kisaran tertentu biasanya antara 1 dan 10 , dengan titik radix muncul segera setelah angka pertama.The faktor skala,sebagai kekuatan sepuluh,kemudian ditunjukkan secara terpisah pada akhir nomor.Misalnya,periode revolusi bulan Jupiter Io adalah 152853.5047 detik , nilai yang akan diwakili dalam notasi ilmiah standar  bentuk sebagai 1,528535047 × 105 detik .Representasi floating-point mirip dalam konsep notasi ilmiah.Logikanya,angka floating point terdiri dari:

• Sebuah ditandatangani (yang berarti positif atau negatif) string yang digit panjang diberikan dalam dasar yang diberikan (atau radix).String ini digit disebut sebagai significand,koefisien atau,lebih jarang,mantissa (lihat di bawah) .Panjang significand menentukan presisi yang nomor dapat diwakili. Radix Posisi titik diasumsikan untuk selalu berada di suatu tempat dalam significand-sering hanya setelah atau sebelum yang paling signifikan digit , atau di sebelah kanan paling kanan (paling signifikan ) digit .Artikel ini umumnya akan mengikuti konvensi bahwa titik radix hanya setelah paling signifikan ( paling kiri)digit .

• Sebuah integer ditandatangani eksponen , juga disebut sebagai karakteristik atau skala,yang memodifikasi besarnya nomor .
Untuk memperoleh nilai dari angka floating-point,seseorang harus kalikan significand dengan dasar pangkat dari eksponen,setara dengan menggeser radix poin dari posisi tersirat oleh sejumlah tempat sama dengan nilai eksponen-ke kanan jika eksponen positif atau ke kiri jika eksponen negatif. Menggunakan basis- 10 (notasi desimal akrab) sebagai contoh , jumlah 152853,5047 ,yang memiliki sepuluh angka desimal presisi , diwakili sebagai significand 1,528535047 bersama dengan eksponen 5 (jika posisi tersirat dari radix point setelah pertama yang paling signifikan digit, di sini 1). Untuk menentukan nilai yang sebenarnya,titik desimal ditempatkan setelah digit pertama significand dan hasilnya dikalikan dengan 105 untuk memberikan 1,528535047 × 105 , atau 152853,5047. Dalam menyimpan nomor tersebut , dasar (10) tidak perlu disimpan , karena akan sama untuk seluruh kisaran angka didukung , dan dengan demikian dapat disimpulkan.Secara simbolis, ini adalah nilai akhirdimana  adalah nilai significand (setelah memperhitungkan tersirat radix point) , B adalah dasar, dan E adalah eksponen.

ekuivalen:di mana s di sini berarti nilai integer dari seluruh significand,mengabaikan semua titik desimal tersirat,dan p adalah presisi jumlah digit di significand tersebut.Secara historis,beberapa pangkalan nomor telah digunakan untuk mewakili angka floating point,dengan basis 2 (biner)yang paling umum,diikuti oleh basis 10 (desimal),dan varietas yang kurang umum lainnya,seperti basis 16 (notasi heksadesimal),sebagai serta beberapa yang eksotis seperti 3 (lihat Setun) .
Angka floating-point adalah bilangan rasional karena mereka dapat direpresentasikan sebagai salah satu bilangan bulat dibagi dengan yang lain.Misalnya 1,45 × 103 adalah (145 /100) * 1000 atau 145000/100 . Dasar namun menentukan pecahan yang dapat diwakili.Misalnya , 1/ 5 tidak dapat diwakili tepat sebagai angka floating-point menggunakan basis biner tetapi dapat diwakili tepat menggunakan basis desimal ( 0,2 , atau 2 × 10-1. Namun 1/3 tidak dapat diwakili tepat oleh salah biner ( 0,010101 … ) atau desimal ( 0,333 ./ ) , tetapi dalam basis 3 itu adalah sepele ( 0,1 atau 1 × 3-1 ) .

Kesempatan di mana ekspansi terbatas terjadi tergantung pada dasar dan faktor utama, seperti yang dijelaskan dalam artikel tentang Notasi Positional, Cara di mana significand tersebut , eksponen dan tanda bit secara internal disimpan di komputer sangat tergantung dari implementasi.
Secara Umum format IEEE dijelaskan secara rinci nanti dan di tempat lain , tetapi sebagai contoh , dalam representasi ( 32 -bit ) floating-point presisi tunggal biner p = 24 dan seterusnya significand adalah string dari 24 bit . Misalnya , jumlah π pertama 33 bit adalah 11001001 00001111 11011010 10100010 0 . Mengingat bahwa bit -24 adalah nol , pembulatan sampai 24 bit dalam mode biner berarti menghubungkan bit -24 dengan nilai 25 yang menghasilkan 11.001.001 00.001.111 11.011.011 . Ketika ini disimpan menggunakan pengkodean IEEE 754 , ini menjadi significand dengan e = 1 (di mana s diasumsikan memiliki titik biner di sebelah kanan bit pertama) setelah kiri penyesuaian (atau normalisasi) selama memimpin atau tertinggal nol terpotong harus ada apapun.


Floating Point Arithmetic
Sistem penempatan titik desimal dengan cara membagi word menjadi dua bagian. Satu bagian berisi angka pecahan,sebagian lainnya merupakan eksponen dari sepuluh. Posisi efektif dari titik desimal akan berubah ketika eksponennya diubah. Sistem ini digunakan untuk menyatakan hasil perhitungan yang sangat besar atau sangat kecil.

Bentuk Bilangan Floating Point 
Bilangan  Floating Point memiliki bentuk  umum : +  m *b e, dimana m (disebut juga dengan mantissa), mewakili bilangan pecahan dan umumnya dikonversi ke bilangan binernya, e mewakili bilangan exponent­nya, sedangkan b mewakili radix (basis) dari exponent.
Berikut ini adalah contoh operasi floating point arithmetic dalam komputer arsitektur.


Kesimpulan :
- Jadi bisa disimpulkan bahwa Arithmatic and Logic Unit (ALU), adalah salah satu bagian/komponen dalam sistem di dalam sistem komputer berfungsi melakukan operasi/perhitungan aritmatika dan logika (seperti penjumlahan, pengurangan dan beberapa logika lain), AlU bekerja besama-sama memori. Dimana hasil dari perhitungan di dalam ALU di simpan ke dalam memori. Perhitungan dalam ALU menggunakan kode biner, yang merepresentasikan instruksi yang akan dieksekusi (opcode) dan data yang diolah (operand).
- Dalam ilmu komputer, istilah "Integer" digunakan untuk merujuk kepada tipe data apapun yang merepresentasikan bilangan bulat, atau beberapa bagian dari bilangan bulat. Disebut juga sebagai Integral Data Type.
- Dalam komputasi floating point menjelaskan metode mewakili perkiraan dari sejumlah nyata dalam cara yang dapat mendukung berbagai nilai .
- Sistem penempatan titik desimal dengan cara membagi word menjadi dua bagian. Satu bagian berisi angka pecahan,sebagian lainnya merupakan eksponen dari sepuluh. Posisi efektif dari titik desimal akan berubah ketika eksponennya diubah. Sistem ini digunakan untuk menyatakan hasil perhitungan yang sangat besar atau sangat kecil.

Referensi :

Nama : Muhammad David Siregar
NPM  : 15113862
Kelas : 2KA04

Rabu, 29 Oktober 2014

Sistem Input/Output (Tugas Peng.Org.&Arst Komputer)

Sistem Input/Output (I/O)

I/O adalah suatu mekanisme pengiriman data secara bertahap dan terus menerus melalui suatu aliran data dari proses ke peranti (begitu pula sebaliknya). Fungsi :Fungsi i/o Pada dasarnya adalah mengimplementasikan algoritma I/O pada level aplikasi. Hal ini dikarenakan kode aplikasi sangat fleksible, dan bugs aplikasi tidak mudah menyebabkan sebuah sistem crash.   Pada dasarnya, tugas utama komputer adalah processing dan I/O (Input danOutput). Bahkan, sebagian besar waktunya digunakan untuk mengolah I/O sedangkan processing hanya bersifat insidental. Jadi, pada konteks I/O, peranan sistem operasiadalah mengatur dan mengontrol perangkat I/O dan operasi I/O.Perangkat I/O sangat bervariasi. Oleh karena itu, bagaimana cara mengontrol perangkat-perangkat tersebut mendapat perhatian besar dalam organisasi komputer.Bayangkan, perangkat I/O yang sangat banyak jumlahnya dan setiap perangkat memilikifungsi dan kecepatan sendiri-sendiri, tentunya memerlukan metode yang berbeda pula.Oleh karena itu, dikenal klasifikasi perangkat I/O menjadi perangkat blok dan perangkatkarakter, walaupun ada perangkat yang tidak termasuk ke dalam satupun dari keduagolongan ini.Perangkat terhubung ke komputer melalui port, diatur oleh device controller dan berkomunikasi dengan prosesor dan perangkat lain melalui bus. Perangkat berkomunikasi dengan prosesor melalui dua pendekatan yaitu memory mapped daninstruksi I/O langsung.

I/O system terdiri dari beberapa again penting yaitu:
a.    I/O Hardware
b.    Application I/O Interface
c.    Kernel I/O Subsystem
d.    I/O Requests to Hardware Operations
e.    Streams
f.    Performance

A.    I/O Hardware

Secara umum, I/O Hardware terdapat beberapa jenis seperti device penyimpanan
(disk,tape),transmission device (network card, modem), dan human-interface device (screen, keyboard, mouse). Device tersebut dikendalikan oleh instruksi I/O. Alamat-alamat yang dimiliki
oleh device akan digunakan oleh direct I/O instruction dan memory-mapped I/O.
Beberapa konsep yang umum digunakan ialah port, bus (daisy chain/ shared direct access), dan controller  (host adapter).
-          Port adalah koneksi yang digunakan oleh device untuk berkomunikasi
dengan mesin.
-          Bus adalah koneksi yang menghubungkan beberapa device menggunakan
kabel-kabel.
-          Controller adalah alat-alat elektronik yang berfungsi untuk mengoperasikan
port, bus, dan device.

B.     Application I/O Interface 

Merupakan suatu mekanisme untuk mempermudah pengaksesan, sehingga sistem operasi melakukan standarisasi cara pengaksesan peralatan I/O. Contoh : suatu aplikasi
ingin membuk data yang ada dalam suatu disk, aplikasi tersebut harus dapat
membedakan jenis disk apa yang akan  diaksesnya. Interface aplikasi I/O melibatkan abstraksi, enkapsulasi, dan software layering. Device driver mengenkapsulasi tiap-tiap peralatan I/O ke dalam masing-masing 1 kelas yang umum (interface standar). Tujuan dari adanya lapisan device driver ini adalah untuk menyembunyikan  perbedaan-perbedaan yang ada pada device controller dari subsistem I/O pada  kernel. Karena hal ini, subsistem I/O dapat bersifat independen dari hardware.

Komponen Input/Output

Komponen input/ouput merupakan suatu rangkaian masukan atau keluaran dengan berbagai macam bentuk dan karakter yang berbeda-beda serta bekerja dengan level tegangan yang bervariasi. Komponen input/ouput agar dapat bekerja dan berhubungan dengan mikroprosesor dilengkapi dengan rangkaian antar muka (interface).Rangkaian interface dapat diartikan sebagai rangkaian penghubung yang menghubungkan antara komponen yang satu dengan komponen yang lainnya, sehingga dapat dilakukan transfer data antara komponen-komponen tersebut. Ini dapat dibangun atau dirancang dengan  rangkaian perangkat keras dan perangkat lunak (program).


Dalam proses interfacing antara sistem mikroprosesor dengan piranti luar dibutuhkan beberapa fungsi seperti, data buffering, address decoding, command decoding, status decoding, dan sistemcontrol dan timing. Semua ini dibutuhkan untuk mensinkronikasikan kerja sistem supaya sinergi. Karena tanpa pengendali dan sinkronisasi menyebabkan berbagai masalah akan timbul dalam proses input/output. Masalah-masalah ini disebabkan oleh perbedaan  kecepatan operasi, perbedaan level sinyal atau tegangan yang dibutuhkan, keanekaragaman peripheral dan berbagai karakternya, dan stuktur sinyal yang kompleks. Oleh karena itu dibutuhkan suatu bagian input/output yang sesuai. Komunikasi antara komponen I/O dengan mikroprtosesor tidak jauh berbeda antara komunikasi memori dengan mikroprosesor, hanya pada I/O prosesnya lebih kompleks dari pada memori. Dibawah ini digambarkan hubungan antara mikroprosesor dengan komponen input/output dan peripheral.

Hardware terdiri dari :
-          Input Device
-          Process Device
-          Output Device

Macam-macam I/O:

1.Konektor RJ 45

Digunakan untuk koneksi Ethernet pada komputer dan perangkat jaringan Ethernet lainnya seperti router dan aktif dan juga modem dan juga perangakat lain yang mendukung interface Ethernet RJ45.Fungsi :Menyambungkan network antara komputer dengan komputer.

2. USB ( Universal Serial Bus )

Port standard yang ada di komputer saat ini.Konektor-konektor USB tersebut dapat ditancapi berbagai perangkat mulai dari mouse sampai printer secara mudah dan cepat. Fungsi :perangkat baru yang belum pernah terinstal di komputer anda sebelumnya, sistem operasi komputer anda secara otomatis akan mencoba mengenalinya dengan auto detect.

Struktur I/O

Bagian ini akan membahas struktur I/O, interupsi I/O, dan DMA, serta perbedaan dalam penanganan interupsi.

Interupsi I/O

Untuk memulai operasi I/O, CPU me-load register yang bersesuaian ke device controller. Sebaliknya device controller memeriksa isi register untuk kemudian menentukan operasi apa yang harus dilakukan. Pada saat operasi I/O dijalankan ada dua kemungkinan, yaitu synchronous I/O dan asynchronous I/O. Pada synchronous I/O, kendali dikembalikan ke proses pengguna setelah proses I/O selesai dikerjakan. Sedangkan pada asynchronous I/O, kendali dikembalikan ke proses pengguna tanpa menunggu proses I/O selesai. Sehingga proses I/O dan proses pengguna dapat dijalankan secara bersamaan.

Proteksi I/O

Pengguna bisa mengacaukan sistem operasi dengan melakukan instruksi I/O ilegal dengan mengakses lokasi memori untuk sistem operasi atau dengan cara hendak melepaskan diri dari prosesor. Untuk mencegahnya kita menganggap semua instruksi I/O sebagai privilidge instruction sehingga mereka tidak bisa mengerjakan instruksi I/O secara langsung ke memori tapi harus lewat sistem operasi terlebih dahulu. Proteksi I/O dikatakan selesai jika pengguna dapat dipastikan tidak akan menyentuh mode monitor. Jika hal ini terjadi proteksi I/O dapat dikompromikan.

Managemen Sistem I/O

Sering disebut device manager. Menyediakan “device driver” yang umum sehingga operasi I/O dapat seragam (membuka, membaca, menulis, menutup). Contoh: pengguna menggunakan operasi yang sama untuk membaca berkas pada hard-disk, CD-ROM dan floppy disk.

Komponen Sistem Operasi untuk sistem I/O:

· Buffer: menampung sementara data dari/ ke perangkat I/O.
· Spooling: melakukan penjadualan pemakaian I/O sistem supaya lebih efisien (antrian dsb.).
· Menyediakan driver untuk dapat melakukan operasi “rinci” untuk perangkat keras I/O tertentu.

CU (Control Unit)
Digunakan untuk mengatur dan menjalankani instruksi dalam urutan yang telah ditetapkan.

ALU(Arithmatic and Logic Unit)
Bagian perangkat keras yang berhubungan langsung dengan perhitungan arithmatic.

RAM (Random Access Memory)
Memori yang membaca dan menulis.

ROM (Read Only Memory)
Memori yang dapat membaca saja.

Peralatan Input
a. Keyboard
b. Mouse
c. Joystick
d. Scanner
e. Lightpen
f. Trackball
g. Touch Sreen
h. Magnetic Ink Character Reader (MICR)
i. Optical Character Reader (OCR)
j. Optical Mark Recognition (OMR) Reader
k. dll

Perangkat Output
a. Monitor
b. Printer dan Plotter
c. Proyektor
d. Microform

Peralatan Input / Output
a. Disk Drive
b. Tape Drive
c. Modem (Modulator Demudolator)
d. Ethernet
e. PCMCIA
f. Hub
g. Switch
h. Print Server
i. Input / Output Card (I / O Card)
j. SCII Card
k. Terminal
l. CD – Room (Compac Disk-Read Only memory)
m. CD-Read and writer
n. DVD-Room
o. DVD-Read and Writer

Perangkat Eksternal

Salah satu fitur dasar komputer adalah kemampuannya untuk mempertukarkan data dengan perangkat lain. Kemampuan komunikasi ini memungkinkan operator manusia, misalnya, untuk menggunakan keyboard dan layer display untuk mengolah teks dan grafik.
Mesin komputer akan memiliki nilai apabila bisa berinteraksi dengan dunia luar. Lebih dari itu, komputer tidak akan berfungsi apabila tidak dapat berinteraksi dengan dunia luar.
Ambil contoh saja, bagaimana kita bisa menginstruksikan CPU untuk melakukan suatu operasi apabila tidak ada keyboard.
Bagaimana kita melihat hasil kerja sistem komputer bila tidak ada monitor. Keyboard dan monitor tergolong dalam perangkat eksternal komputer. Perangkat eksternal atau lebih umum disebut peripheral tersambung dalam sistem CPU melalui perangat pengendalinya, yaitu modul I/O.

Perangkat eksternal diklasifikasikan menjadi 3 kategori:

• Human Readable, yaitu perangkat yang berhubungan dengan manusia sebagai pengguna komputer.
Contohnya: monitor, keyboard, mouse, printer, joystick, disk drive.

• Machine readable, yaitu perangkat yang berhubungan dengan peralatan. Biasanya berupa modul sensor dan tranduser untuk monitoring dan kontrol suatu peralatan atau sistem.

• Communication, yatu perangkat yang berhubungan dengan komunikasi jarak jauh. Misalnya: NIC dan modem.

Modul I/O merupakan peralatan antarmuka (interface) bagi sistem bus atau switch sentral dan mengontrol satu atau lebih perangkat peripheral.

Modul I/O tidak hanya sekedar modul penghubung, tetapi sebuah piranti yang berisi logika dalam melakukan fungsi komunikasi antara peripheral dan bus komputer.

Sistem Masukan & Keluaran Komputer

—  Bagaimana modul I/O dapat menjalankan tugasnya, yaitu menjembatani CPU dan memori dengan dunia luar merupakan hal yang terpenting untuk kita ketahui.

—   Inti mempelajari sistem I/O suatu komputer adalah mengetahui fungsi dan struktur modul I/O.

Modul I/O adalah suatu komponen dalam sistem komputer yang bertanggung jawab atas pengontrolan sebuah perangkat luar atau lebih dan bertanggung jawab pula dalam pertukaran data antara perangkat luar tersebut dengan memori utama ataupun dengan register – register CPU.
Dalam mewujudkan hal ini, diperlukan antar muka internal dengan komputer (CPU dan memori utama) dan antarmuka dengan perangkat eksternalnya untuk menjalankan fungsi – fungsi pengontrolan.

Fungsi dalam menjalankan tugas bagi modul I/O dapat dibagi menjadi beberapa katagori, yaitu:
-          Kontrol dan pewaktuan.
-          Komunikasi CPU.
-          Komunikasi perangkat eksternal.
-          Pem-buffer-an data.
-          Deteksi kesalahan.

1. Kontrol dan pewaktuan:

Fungsi kontrol dan pewaktuan (control & timing) merupakan hal yang penting untuk mensinkronkan kerja masing – masing komponen penyusun komputer. Dalam sekali waktu CPU berkomunikasi dengan satu atau lebih perangkat dengan pola tidak menentu dan kecepatan transfer komunikasi data yang beragam, baik dengan perangkat internal seperti register – register, memori utama, memori sekunder, perangkat peripheral. Proses tersebut bisa berjalan apabila ada fungsi kontrol dan pewaktuan yang mengatur sistem secara keseluruhan.

Contoh control pemindahan data dari peripheral ke CPU melalui sebuah modul I/O dapat meliputi langkah – langkah berikut ini :
—  Permintaan dan pemeriksaan status perangkat dari CPU ke modul I/O.
—  Modul I/O memberi jawaban atas permintaan CPU.
—  Apabila perangkat eksternal telah siap untuk transfer data, maka CPU akan mengirimkan perintah ke modul I/O.
—  Modul I/O akan menerima paket data dengan panjang tertentu dari peripheral.
—  Selanjutnya data dikirim ke CPU setelah diadakan sinkronisasi panjang data dan kecepatan transfer oleh modul I/O sehingga paket – paket data dapat diterima CPU dengan baik.
—  Transfer data tidak akan lepas dari penggunaan sistem bus, maka interaksi CPU dan modul I/O akan melibatkan kontrol dan pewaktuan sebuah arbitrasi bus atau lebih.

2. Komunikasi CPU

Adapun fungsi komunikasi antara CPU dan modul I/O meliputi proses – proses berikut :
• Command Decoding, yaitu modul I/O menerima perintah – perintah dari CPU yang dikirimkan sebagai sinyal bagi bus kontrol.Misalnya,sebuah modul I/O untuk disk dapat menerima perintah: Read sector, Scan record ID, Format disk.
• Data, pertukaran data antara CPU dan modul I/O melalui bus data.
• Status Reporting, yaitu pelaporan kondisi status modul I/O maupun perangkat peripheral, umumnya berupa status kondisi Busy atau Ready. Juga status bermacam – macam kondisi kesalahan (error).
• Address Recognition, bahwa peralatan atau komponen penyusun komputer dapat dihubungi atau dipanggil maka harus memiliki alamat yang unik, begitu pula pada perangkat peripheral, sehingga setiap modul I/O harus mengetahui alamat peripheral yang dikontrolnya.
—  Pada sisi modul I/O ke perangkat  peripheral juga terdapat komunikasi yang meliputi komunikasi data, kontrol maupun status.

 3. Komunikasi Perangkat Peripheral
Proses transfer informasi antara CPU dengan sebuah
peripheral :
 - Memilih I/O dan mengujinya.
 - Menginisialisasi transfer dan mengkoordinasikan pengaturan waktu operasi I/O.
 - Mentransfer informasi.
 - Menghentikan proses transfer.

4. Buffering & Deteksi Kesalahan

Tujuan utama buffering adalah mendapatkan penyesuaian data sehubungan perbedaan laju transfer data dari perangkat peripheral dengan kecepatan pengolahan pada CPU.
Umumnya laju transfer data dari perangkat peripheral lebih lambat dari kecepatan CPU maupun media penyimpan.

Fungsi terakhir adalah deteksi kesalahan. Apabila pada perangkat peripheral terdapat masalah sehingga proses tidak dapat dijalankan, maka modul I/O akan melaporkan kesalahan tersebut. Misal informasi kesalahan pada peripheral printer seperti: kertas tergulung, pinta habis, kertas habis, dan lain – lain. Teknik yang umum untuk deteksi kesalahan adalah penggunaan bit paritas.

Struktur Modul I/O:

Antarmuka modul I/O ke CPU melalui bus sistem komputer terdapat tiga saluran, yaitu :
•       saluran data,
•       saluran alamat dan saluran kontrol.
•       Bagian terpenting adalah blok logika I/O yang berhubungan dengan semua peralatan antarmuka peripheral, terdapat fungsi pengaturan dan switching pada blok ini.

Teknik Masukan/Keluaran:

Terdapat tiga buah teknik dalam operasi I/O, yaitu: 1. I/O terprogram.Data saling dipertukarkan antara CPU dan modul I/O. CPU mengeksekusi program yang memberikan operasi I/O kepada CPU secara langsung, seperti pemindahan data, pengiriman perintah baca maupun tulis, dan monitoring perangkat. Kelemahan teknik ini adalah CPU akan menunggu sampai operasi I/O selesai dilakukan modul I/O sehingga akan membuang waktu, apalagi CPU lebih cepat proses operasinya. Dalam teknik ini, modul I/O tidak dapat melakukan interupsi kepada CPU terhadap proses – proses yang diinteruksikan padanya. Seluruh proses merupakan tanggung jawab CPU sampai operasi lengkap dilaksanakan.Untuk melaksanakan perintah – perintah I/O, CPU akan mengeluarkan sebuah alamat bagi modul I/O dan perangkat peripheralnya sehingga terspesifikasi secara khusus dan sebuah perintah I/O yang akan dilakukan. Terdapat empat klasifikasi perintah I/O, yaitu:

1. Perintah control.

Perintah ini digunkan untuk mengaktivasi perangkat peripheral dan memberitahukan tugas yang diperintahkan padanya.

2. Perintah test.
Perintah ini digunakan CPU untuk menguji berbagai kondisi status modul I/O dan peripheralnya. CPU perlu mengetahui perangkat peripheralnya dalam keadaan aktif dan siap digunakan, juga untuk mengetahui operasi – operasi I/O yang dijalankan serta mendeteksi kesalahannya.

3. Perintah read.
Perintah pada modul I/O untuk mengambil suatu paket data kemudian menaruh dalam buffer internal. Proses selanjutnya paket data dikirim melalui bus data setelah terjadi sinkronisasi data maupun kecepatan transfernya.

4. Perintah write.
Perintah ini kebalikan dari read. CPU memerintahkan modul I/O untuk mengambil data dari bus data untuk diberikan pada perangkat peripheral tujuan data  tersebut.

Direct Memory Acces (DMA)

Direct memory access (DMA) adalah suatu alat pengendali khusus disediakan untuk memungkinkan transfes blok data langsung antar perangkat eksternal dan memori utama, tanpa intervensi terus menerus dari prosesor (CPU).Sistem DMA Hubungan pada system DMA dilakukan oleh sirkuit kontrol yang merupakan bagian dari antar muka perangkat I/O dengan modus transfer. Istilah ini yang sering banyak kita ketahui adalah sebagai kontroler DMA. Kontroler DMA melakukan fungsi yang biasanya dilakukan oleh prosesor pada saat mengakses memori utama (yang sering disebut :RAM). Untuk setiap word yang ditransfer, kontroler ini menyediakan alamat memori dan semua sinyal bus yang mengontrol transfer data. Karena harus mentransfer sejumlah blok data, maka kontroler DMA harus menaikkan alamat memori untuk word yang berurutan dan mencatat jumlah transfer.

Untuk memulai sebuah transfer DMA, host akan menuliskan sebuah DMA command block yang berisi pointer yang menunjuk ke sumber transfer, pointer yang menunjuk ke tujuan transfer, dan jumlah byte yang ditransfer, ke memori. CPU kemudian menuliskan alamat command block ini ke pengendali DMA, sehingga pengendali DMA dapat kemudian mengoperasikan bus memori secara langsung dengan menempatkan alamat- alamat pada bus tersebut untuk melakukan transfer tanpa bantuan CPU.Sekalipun kontroler DMA dapat mentransfer data tanpa intervensi dari prosesor, operasinya tetap berada dibawah kontrol program yang dieksekusi oleh prosesor. Untuk menginisiasi transfer suatu blok word, prosesor mengirim alamat awal, jumlah word dalam blok, dan arah transfer. Pada saat seluruh blok telah ditransfer, kontroler tersebut memberitahu prosesor dengan memunculkan sinyal interupt. Pada saat transfer DMA terjadi, program yang meminta transfer tersebut berhenti bekerja dan prosesor dapat digunakan untuk mengeksekusi program lain. Setelah transfer DMA selesai, prosesor dapat kembali ke program yang meminta transfer tersebut.

Tiga langkah dalam transfer DMA:

1. Prosesor menyiapkan DMA transfer dengan menyedia kan data-data dari perangkat, operasi yang akan ditampilkan, alamat memori yang menjadi sumbe dan tujuan data, dan banyaknya byte yang ditransfer.

2. Pengendali DMA memulai operasi (menyiapkan bus, menyediakan alamat, menulis dan membaca data), sampai seluruh blok sudah di transfer.

3. Pengendali DMA meng-interupsi prosesor, dimana selanjutnya akan ditentukan tindakan berikutnya.

Pada dasarnya, DMA mempunyai dua metode yang berbeda dalam mentransfer data. Metode yang pertama adalah metode yang sangat baku dan sederhana disebut HALT, atau Burst Mode DMA, karena pengendali DMA memegang kontrol dari sistem bus dan mentransfer semua blok data ke atau dari memori pada single burst. Selagi transfer masih dalam prosres, sistem mikroprosessor di-set idle, tidak melakukan instruksi operasi untuk menjaga internal register. Tipe operasi DMA seperti ini ada pada kebanyakan komputer. Metode yang kedua, mengikut-sertakan pengendali DMA untuk memegang kontrol dari sistem bus untuk jangka waktu yang lebih pendek pada periode dimana mikroprosessor sibuk dengan operasi internal dan tidak membutuhkan akses ke sistem bus. Metode DMA ini disebut cycle stealing mode. Cycle stealing DMA lebih kompleks untuk diimplementasikan dibandingkan HALT DMA, karena pengendali DMA harus mempunyai kepintaran untuk merasakan waktu pada saat sistem bus terbuka.

Handshaking

Proses handshaking antara pengendali DMA dan pengendali perangkat dilakukan melalui sepasang kabel yang disebut DMA-request dan DMA-acknowledge. Pengendali perangkat mengirimkan sinyal melalui DMA-request ketika akan mentransfer data sebanyak satu word. Hal ini kemudian akan mengakibatkan pengendali DMA memasukkan alamat yang dinginkan ke kabel alamat memori, dan mengirimkan sinyal melalui kabel DMA-acknowledge. Setelah sinyal melalui kabel DMA-acknowledge diterima, pengendali perangkat mengirimkan data yang dimaksud dan mematikan sinyal pada DMA-request. Hal ini berlangsung berulang-ulang sehingga disebut handshaking. Pada saat pengendali DMA mengambil alih memori, CPU sementara tidak dapat mengakses memori (dihalangi), walau pun masih dapat mengaksees data pada cache primer dan sekunder. Hal ini disebut cycle stealing, yang walau pun memperlambat komputasi CPU, tidak menurunkan kinerja karena memindahkan pekerjaan data transfer ke pengendali DMA meningkatkan performa sistem secara keseluruhan.

Implementasi DMA

Dalam pelaksanaannya, beberapa komputer menggunakan memori fisik untuk proses DMA , sedangkan jenis komputer lain menggunakan alamat virtual dengan melalui tahap “penerjemahan” dari alamat memori virtual menjadi alamat memori fisik, hal ini disebut Direct Virtual-Memory Address atau DVMA. Keuntungan dari DVMA adalah dapat mendukung transfer antara dua memori mapped device tanpa intervensi CPU.

Prinsip kerja DMA

• CPU akan mendelegasikan kerja I/O kepada DMA
• CPU hanya akan terlibat pada awal proses untuk memberikan instruksi lengkap pada DMA dan akhir proses saja
• CPU dapat menjalankan proses lainnya tanpa banyak terganggu dengan interupsi
• Melaksanakan transfer data secara mandiri :

1. DMA memerlukan pengambilalihan kontrol bus dari CPU
2. DMA akan menggunakan bus bila CPU tidak menggunakannya atau DMA memaksa CPU untuk menghentikan sementara penggunaan bus
3. Teknik cyclestealing, modul DMA mengambil alih siklus bus

Saluran I/O dan Processor

Evolusi Fungsi I/O

CPU mengontrol peripheral secara langsung. Ditambahkannya sebuah pengontrol atau modul I/O CPU menggunakan I/O terprogram tanpa menggunakan interrupt.CPU menggunakan interrupt Menggunakan DMA
Modul I/O ditingkatkan kemampuannya menjadi sebuah prosessor yang memiliki tugasnya sendiri, yang menggunakan instruksi tertentu untuk I/O tertentu.
Modul I/O memiliki memori lokalnya sendiri dan merupakan sebuah computer yang memiliki tugasnya sendiri.

Saluran I/O

Pada kebanyakan sistem komputer, CPU tidak dibebani menangani tugas yang berhubungan dengan I/O. Tetapi tanggung jawab untuk kontrol peralatan diserahkan pada prosesor I/O, yang dikenal sebagai saluran I/O (I/O channel).Saluran I/O itu sendiri merupakan prosesor yang sudah diprogram. Program-program yang di-execute ini disebut channel program. Channel program ini menentukan operasi, yang diperlukan untuk akses peralatan dan mengontrol jalur data (data pathway).

Macam-Macam Saluran

1.  Selector Channel :
Dapat mengatur aliran data antara memori utama dengan sebuah peralatan pada saat tersebut. Karena saluran merupakan processor-processor yang cepat maka saluran selektor biasanya hanya menggunakan peralatan I/O dengan kecepatan tinggi, seperti disk. Penggunaan peralatan dengan kecepatan rendah, misal card reader.

2.  Multiplexor Channel :
Dapat mengatur aliran data antara memori utama dengan beberapa peralatan. Saluran Multiplexor lebih efektif bila menggunakan peralatan dengan kecepatan rendah, dibandingkan dengan selector channel. Dengan saluran multiplexor, beberapa peralatan dapat diaktifkan secara serentak, tetapi saluran harus melengkapi saluran program untuk satu peralatan sebelum memulai dengan saluran program lain.

3. Block Multiplexor Channel :
Mengatur aliran data ke berbagai peralatan. Block Multiplexor Channel dapat mengeksekusi satu instruksi dari saluran program untuk satu peralatan, kemudian dapat mengalihkan instruksi-instruksi dari saluran program itu ke peralatan yang lain.

Macam-macam Device

1.  Dedicated Device :
Digunakan untuk pengaksesan oleh satu orang pada setiap saat.Contoh : Terminal.

2.  Shared Device :
Digunakan untuk pengaksesan oleh banyak pemakai secara bersamaan.Contoh : Disk.
Aktifitas I/O untuk shared device adalah sangat kompleks dibanding aktifitas I/O pada dedicated device. Dua fungsi yang sangat penting dari shared device adalah alokasi tempat dan pemberian akses yang tepat.

Aktifitas Saluran

Tujuan dari saluran I/O adalah sebagai perantara antara CPU-main memory dengan unit pengontrol penyimpan. CPU berkomunikasi dengan saluran melalui beberapa perintah yang sederhana.
Beberapa saluran akan memberi perintah :
-  Test I/O, untuk menentukan apakah jalur (pathway) yang menuju peralatan sedang sibuk.
-  Start I/O, pada peralatan tertentu.
- Halt I/O, pada peralatan tertentu.
Saluran biasanya berkomunikasi dengan CPU melalui cara interupsi. Interupsi akan terjadi, jika keadaan error terdeteksi, misalnya instruksi CPU yang salah atau jika aktifitas I/O telah diakhiri.
Jika interupsi terjadi, kontrol akan bercabang melalui rutin pengendali interupsi (interrupt-handler routine), dimana kontrol akan menentukan penyebab dari interupsi, melakukan kegiatan yang tepat, kemudian mengembalikan kontrol pada pemanggil (caller).

Analisis :

Modul I/O merupakan peralatan antarmuka (interface) bagi sistem bus atau switch sentral dan mengontrol  satu atau lebih perangkat peripheral.Modul I/O adalah suatu komponen dalam sistem komputer yang bertanggung jawab atas pengontrolan sebuah perangkat luar atau lebih dan bertanggung jawab pula dalam pertukaran data antara perangkat luar tersebut dengan memori utama ataupun dengan register-register CPU.Direct Memory Access(DMA) dapat mengurangi beban CPU karena terjadinya transfer data antara perangkat dan memori tanpa melalui CPU.

Referensi :


Nama : Muhammad David Siregar
NPM : 15113862

Kelas : 2KA04