Epistemologi Ilmu Pengetahuan

6 Macam Komponen Pendefinisian Ilmu Pengetahuan

  1. Masalah (problem)
  2. Sikap (attitude)
  3. Metode (method)
  4. Aktivitas (activity)
  5. Kesimpulan (conclusions)
  6. Beberapa Pengaruh (effects)

5 Ciri Pokok Ilmu pengetahuan (The Liang Gie)

  1. Empiris  ; Pengetahuan diperoleh berdasarkan pengamatan dan percobaan
  2. Sistematis ; Kumpulan keterangan dan data yang saling berhubungan dan teratur
  3. Objektif ; Ilmu pengetahuan bebas dari prasangka perseorangan
  4. Analitis  ; Perbedaan pokok soal ke dalam bagian terperinci

8 Ciri Menandai Ilmu (Van Melsen)

  1. Il. Peng secara metodis harus mencapai keseluruhan koheren
  2. Il. Peng tanpa pamrih
  3. Universalitas Il. Peng
  4. Objektivitas Il. Peng
  5. Il. Peng harus dapat diverifikasi
  6. Il. Peng memiliki progresivitas
  7. Il. Peng dapat dikritisi
  8. Il. Peng digunakan sebagai perwujudan teori dengan praktis

Syarat Ilmiah dalam Ilmu

  1. Ilmu harus mempunyai objek
  2. Ilmu harus mempunyai metode
  3. Ilmu harus sistematik
  4. Ilmu bersifat universal

4 Bentuk Suatu Objek Berpengetahuan Ilmiah

  1. Deskripsi : Kumpulan pernyataan bercorak deskriptif mengenai bentuk, susunan, peranan, dan hal-hal terperinci lainnya.
  2. Preskripsi : Kumpulan pernyataan bercorak preskriptif dengan memberikan petunjuk atau  ketentuan mengenai apa yang perlu berlangsung atau sebaiknya dilakukan.
  3. Eksposisi Pola : Memaparkan pola sekumpulan sifat, ciri, kecenderungan, atau proses lainnya.
  4. Rekonstruksi Historis : Menggambarkan atau menceritakan dengan penjelasan dan alasan yang diperlukan pada masa lampau.

Penggolongan ilmu:

  1. Ilmu formal & non-formal / ilmu formal & non-empiris
  2. Ilmu murni & ilmu terapan
  3. Ilmu Nomotetis & Idiografis
  4. Ilmu Deduktif & Induktif
  5. Naturwissenschaften & Geisteswissenschaften
  6. Ilmu-ilmu Empiris secara lebih khusus

fi1

The Liang Gie

The Liang Gie membagi pengetahuan berdasarkan 2 hal

  1. Ragam Pengetahuan

memakai sifat atributif

a. Ilmu teoretis (theoretical science)

b. Ilmu praktis (practical science)

2. Jenis pengetahuan

memakai isi substantif

fi2

Cristian Wolff

Skema klasifikasi ilmu pengetahuan:

  1. Ilmu Pengetahuan Empiris

1. Kosmologis empiris

2. Psikologi empiris

B. Matematika

1. Murni : aritmatika, geometri, aljabar

2. Campuran : mekanika, dll.

C. Filsafat

1. Spekulatif (metafisika)

a. umum – ontologi

b. khusus : psikologi, kosmologi, teologi

2. Praktis

a. intelek –logika

b. kehendak : ekonomi, etika, politik

c. pekerjaan fisik : teknologi

fi4                       fi3

Thomas S. Kuhn

Bersifat revolusioner (revolusi ilmiah dalam paradigma)

Tahap 1            : Paradigma membimbing dan mengarahkan aktivitas ilmiah dalam masa ilmu normal (normal science)

Tahap 2            : Menumpuknya anomali menimbulkan krisis kepercayaan para ilmuwan terhadap paradigma

Tahap 3            : mengembangkan dan memperluas suatu paradigma dengan cara-cara ilmiah yang sama

Jurgen Habermas

f15

Kunci Jawaban (1)

Kita dilahirkan sebagai manusia yang memiliki sifat ingin tahu. Benarkah? Lalu dari mana jawaban atas semua pertanyaan-pertanyaan kita?? Sang Pencipta, Allah swt lah yang memiliki semua jawaban. Allah telah merangkumnya dalam Kalam Al-Quranur Kariim.

Ya, kunci jawaban nya terdapat dalam AL-QUR’AN. Di bawah ini merupakan ringkasan dari keutamaan Al-Qur’an beserta ayat-ayat yang terkandung di dalamnya.

1

Lihatlah pula topik- topik yang terdapat dalam Al-Quran, apa yang belum lengkap di sana?? Segala Puji bagi Allah swt

2

Bagaimana Allah mengatur kedisiplinan dengan adab-adab yang begitu indah, Subhanallah

3

Dan bagaimana pula sejarah turunnya Al-Quran ??

4

Lagi-lagi kita memuji akan segala mukjizat Allah swt, Luar biasa Allahu Akbar !!

5

Atau anda penasaran dengan fenomena geografis dan fenomena alam yang terjadi pada bumi tempat anda berpijak?? Saya tegaskan jawabannya hanya ada di AL-QURAN

6

Anda juga ingin tahu bagaimana asal terciptanya manusia? Sifat dan macam jiwa manusia??

Tunggu postingan saya selanjutnya, sementara buka dan bacalah serta pahamilah Al-Quran sekarang juga. Insyaallah tak akan merugi ^_^

Adaline

Model ADALINE (Adaptive Linear Neuron) arsitekturnya mirip dengan perceptron. Beberapa masukan dan sebuah bias dihubungkan langsung dengan sebuah neuron keluaran. Perbedaan dengan perceptron adalah dalam hal cara modifikasi bobotnya. Selengkapnya dapat anda cari tahu apa itu madaline di tetangga sebelah ^_^

Untuk lebih jelasnya kita coba pelatihan mengenai adaline

a1

Ditanyakan : hitung dengan menggunakan adaline !

Jawab

a2

kesimpulan:

pada contoh soal di atas, hanya sebatas 3 epoch bila menggunakan metode adaline, karena nilai delta w1 mendekati nilai batas toleransi yaitu 0,05. Maka iterasi adaline dihentikan.

Mari kita lanjut ke soal berikutnya

a21

Ditanyakan : Hitung dengan menggunakan metode adaline !

Jawab

a22

dari tabel epoch di atas, belum terdapat tanda-tanda bahwa dapat diselesaikan oleh adaline, karena nilai delta w1 masih jauh lebih besar dari batas toleransi, mari kita lanjut ke epoch selanjutnya

a23

masih belum terlihatkah?? Lakukan iterasi demi iterasi sampai dapat ^_^

a24

Akhirnya, saya stop iterasi pada epoch ke-14 karena nilai delta w1 sudah mendekati batas toleransi walaupun tidak tepat sama dengan nilai batas toleransi.

Bagi anda yang minat untuk mengoreksi, sila dikoreksi. Jawaban nya betul, atau benaar ?? hhee ^_^

Perceptron

Sahabat wikara, kali ini saya akan posting quiz mengenai perceptron yang telah saya coba kerjakan. Di sini tidak akan dibahas lagi apa itu metode perceptron pada jaringan syaraf tiruan, karena telah banyak tutorial di tetangga sebelah ^_^

To the point ke contoh soal yang pertama dengan 3 inputan.

P1P2

Pertanyaan : Hitung dengan menggunakan perceptron !

P3

P4

kesimpulan :

soal tersebut dapat dikenali oleh perceptron setelah 4 epoch

dengan nilai w1 = 1, w2 = -2, w3 = -3 dan b = 0

Lanjut soal kedua dengan menggunakan 4 inputan.

p21p22

ditanyakan : hitung dengan menggunakan metode perceptron !

p23

p24

kesimpulan :

dapat dikenali oleh metode perceptron setelah 3 epoch

dengan nilai w1 = -2, w2 = 2, w3 = 0, w4 = 2 dan b = 0

masih soal perceptron yang ketiga yaitu dengan menggunakan 2 inputan.

p31p32

ditanyakan : hitung dengan menggunakan metode perceptron !

p33

p34

jika anda perhatikan tabel epoch di atas, kesimpulan yang diperoleh adalah dengan pola masukan dan target seperti soal ketiga, maka tidak dapat dikenali oleh perceptron karena nilai atau bobot baru yang dihasilkan selalu bernilai 0 untuk w1, w2 dan b.

Demikian contoh-contoh soal yang menurut saya sudah mewakili dari beragam contoh perceptron. Jika anda memiliki waktu untuk mengoreksi, sila dikoreksi. Jawabannya betul, atau betull ?? hheee ^_^

Control Unit

Berfungsi sebagai pengendali setiap aktifitas yang ada didalam CPU dan membangkitkan sinyal-sinyal kontrol. Selain melakukan instruksi (fetch, indirect, execute dan interrupt) control unit juga melakukan intsruksi khusus (urutan reset, pelayanan interrupt dan penanganan situasi kegagalan).

CU

Microoperation

  • Siklus Fetch, Siklus pertama yang dilakukan dalam insruksi  yang dilakukan pada  sejumlah memori antara lain: MBR, MAR, PC dan IR.
  • Siklus Indirect, siklus mengambil operand sumber,  Apabila operasi menspesifikasikan alamat tak langsung maka siklus tak langsung harus mendahului  siklus eksekusi.
  • Siklus Interrupt, terjadi pada saat Control Unit memeriksa kehadiran permintaan interupsi sebelum melakukan pengambilan intruksi baru dan setelah instuksi yang sebelumya diselesaikan.
  • Siklus Execute, Merupakan siklus yang palng kompleks tergantung dari perintah yang diberikan

Input pada Unit Control

  • Clock, sinkronisasi operasi antar komponen
  • Flag, mengetahui status CPU
  • Instruction register, menentukan operasi mikro yang akan digunakan berdasarkan operand
  • Sinyal kontrol dari Bus memberi jalur munuju unit kontrol dari bus

Output Unit Control

  • Sinyal kontrol didalam CPU terdiri dari :  sinyal yang menyebabkan perpindahan data antar register dan sinyal yang dapat mengaktifkan fungsi ALU
  • Sinyal kontrol menuju Bus yang terdiri dari : Sinyal kontrol menuju memori dan Sinyal kontrol menuju modul I/O.

output cu

Pemilihan Design Control Unit

  1. Hardwired Control Unit (HCU) : Terdiri dari kumpulan sirkuit kombinasional yang membangkitkan sinyal kontrol berdasarkan sinyal input.melalui sirkuit hardware. Keunggulan Hardwired Control Unit adalah mampu bekerja lebih cepat dari Microgrammed Control Unit(MCU)
  2. Microgrammed Control Unit (MCU) : Menggunakan konsep penyimpanan microgram yaitu menyimpan pola sinyal kontrol pada sebuah memori ROM untuk membangkitkan sinyal-sinyal kontrol. Keunggulan rancangan lebih mudah dan dapat dimodifikasi.

Komputer Paralel

Klasifikasi multiprosesor

Sistem multiprosesor dapat dibedakan menjadi dua:
  1. Loosely coupled: memori tidak disharing dan setiap prosesor mempunyai  memori  sendiri.
  2. Tightly coupled: melakukan sharing informasi melalui sebuah memori bersama.

Cluster adalah Suatu interkoneksi sistem komputer multi independen yang dioperasikan seperti sebuah sistem tunggal dalam suatu kerjasama. Setiap simpul dalam cluster dapat juga bekerja secara independen. Dua tujuan utama terbentuknya cluster :

  • Load sharing : dua sistem membentuk cluster dan sharing beban pemrosesan.

load sharing

  • Fault Tolerance : salah satu digunakan sebagai hot stand-by yang berfungsi melakukan pengambil alihan fungsi bila terjadi kegagalan. Dan berlaku diam selama tidak menemukan kegagalan pada sistem lain.

fault tolerance

Pengolahan Paralel

Pengolahan informasi yang menekankan pada manipulasi data-data  elemen secara simultan. Tujuan : untuk mempercepat komputasi dari sistem komputer dan menambah jumlah keluaran (troughput) yang dapat dihasilkan dalam jangka waktu tertentu. Komputer Paralel : Komputer yang memiliki kemampuan untuk melakukan pengolahan paralel. Peningkatan throughput dapat dilakukan dengan :

  • Meningkatkan kecepatan operasi
  • Meningkatkan jumlah operasi yang dapat dilakukan dalam satu waktu tertentu (concurrency).
Klasifikasi Komputer parallel dalam beberapa sudut pandang:
  • Klasifikasi Flynn

Memandang organisasi sebuah sistem komputer berdasarkan jumlah instruksi dan data yang dimanipulasi secara simultan dan membaginya menjadi empat kelompok utama:

SISD  (Single Instruction stream, Single Data stream) : Komputer tunggal yang mempunyai satu unit kontrol, satu unit prosesor dan satu unit memori.

SISD

SIMD  (Single Instruction stream,  Multiple Data stream) : Komputer yang mempunyai beberapa unit prosesor di bawah pengawasan satu unit kontrol. Setiap prosesor menerima instruksi yang sama dari unit kontrol, tetapi beroperasi pada data yang berbeda.

simd

MISD  (Multiple Instruction stream, Single Data stream) : Sampai saat ini struktur ini masih merupakan struktur teoritis dan belum ada komputer dengan model ini.

MISD

MIMD  (Multiple Instruction stream, Multiple Data stream) : Organisasi komputer yang memiliki kemampuan untuk memproses beberapa program dalam waktu yang sama. Pada umumnya multiprosesor dan multikomputer termasuk dalam kategori ini.
MIMD

Synchronous :

  1. Terdapat koordinasi yang mengatur beberapa operasi untuk dapat berjalan bersamaan hingga tidak ada ketergantungan antar operasi.
  2. Parallelism yang termasuk dalam kategori ini adalah vector/array parallelism, SIMD dan systolic parallelism.
  3. Systolic parallel computer adalah multiprocessor dimana data didistribusikan dan dipompa dari memory ke suatu array prosesor sebelum kembali ke memori.

Asynchronous :

  1. Masing-masing prosesor dapat diberi tugas atau menjalankan operasi berbeda dan masing-masing prosesor melaksanakan operasi tersebut secara sendiri-sendiri tanpa perlu koordinasi.
  2. Paradigma yang juga termasuk dalam kategori ini adalah  MIMD dan reduksi.
  3. Paradigma reduksi adalah paradigma yang berpijak pada konseph graph reduksi. Program dengan model reduksi diekspresikan sebagai graph alur data. Komputasi berlangsung dengan cara mereduksi graph dan program berhenti jika graph akhirnya hanya mempunyai satu simpul.
  • MICHAEL J. QUINN

Quinn membedakan paralelisma ke dalam dua jenis : Data Parallelism dan Control Parallelism.

  • Data Parallelism : penerapan operasi yang sama secara simultan terhadap elemen-elemen dari kumpulan data.
  • Control Parallelism : penerapan operasi-operasi berbeda terhadap elemen-elemen data yang berbeda secara bersamaan. Aliran data lebih kompleks.

Contoh Parallelism adalah pipelining yaitu Teknik pemecahan satu tugas menjadi beberapa sub-tugas dan mengeksekusi tugas tersebut secara bersamaan dalam unit-unit multihardware atau segmen-segmen.

Analisa Algoritma Paralel

  • Running Time

Waktu yang digunakan oleh sebuah algoritma untuk menyelesaikan masalah pada sebuah komputer paralel dihitung mulai dari saat algoritma mulai hingga saat algoritma berhenti. Jika prosesor-prosesornya tidak mulai dan selesai pada saat yang bersamaan, maka running time dihitung mulai saat komputasi pada prosesor pertama dimulai hingga pada saat komputasi pada prosesor terakhir selesai.

  • Banyaknya Prosesor

Semakin banyak prosesor yang digunakan semakin tinggi biaya untuk memperoleh solusi sebuah problem. Hal ini terjadi karena perlu dipertimbangkan biaya  pengadaan prosesor dan perawatannya.  Jumlah prosesor yang tergantung dari  n, n=ukuran problem, dinyatakan sebagai  p(n). Kadang-kadang jumlah prosesor tidak tergantung pada ukuran problem.

Teknik Kompilasi

Sebelumnya pena wikara telah posting arsitektur dan organisasi komputer. Kali ini pena wikara akan membahas apa itu teknik kompilasi.

Teknik ialah metode atau cara. Sedangkan kompilasi merupakan suatu proses penterjemahan dan penggabungan dari suatu program awal (source code) ke bentuk bahasa sasaran (on target language/object code). Bahasan mengenai dasar teknik kompilasi diantaranya :

  1. Translator
  2. Bahasa Pemograman
  3. Model Kompilator

TRANSLATOR

Adalah suatu program di mana mengambil input program dari source code kemudian dituliskan dalam bentuk object code. Atau translator dapat dikatakan sebagai perubahan dari source code ke object code. Proses penterjemahan dilakukan oleh kompilator disebut compiling atau kompilasi. Kompilator (compiler) bertugas untuk melaporkan jika kemungkinan terjadinya kesalahan/error.

Ada 3 jenis translator :

A. Assembler

  • Source Code : bahasa assembly
  • Object Code : bahasa mesin

contoh : Turbo assembler, marco assembler

assemblerB. Compiler / Kompilator

Sebuah program yang membaca suatu program yang dituliskan ke dalam suatu bahasa sumber dan menerjemahkannya ke dalam suatu bahasa.

  • Source Code : tingkat tinggi
  • Object Code : bahasa mesin/assembly
  • Source Code dan data diproses pada saat yang berbeda

compilerC. Interpreter

Sebuah program yang digunakan untuk menterjemahkan, mengeksekusi dan memberikan hasil dari eksekusi instruksi masukannya. Interpreter tidak membangkitkan object code, hasil translasinya dalam bentuk internal. Source code dan data diproses pada saat yang sama.

interpreter

BAHASA PEMOGRAMAN

Bahasa dan tingkat ketergantungannya dengan mesin dibedakan atas 4 :

  1. Mesin Language/Bahasa Mesin
  2. Bahasa Pemograman/Bahasa Manusia
  3. Bahasa Assembly
  4. Bahasa yang problem oriented

Mesin Language/Bahasa Mesin

Merupakan bentuk terendah dari bahasa komputer. Disebut low level language -> object language. Bahasa mesin berkomunikasi langsung dengan bagian-bagian yang ada di dalam komputer seperti bits, register. Setiap instruksi dalam program direpresentasikan dengan kode numerik berupa deretan angka nol dan satu (0,1). Setiap instruksi dalam bahasa mesin, dibentuk menjadi micro code yaitu seperti prosedur dalam bahasa mesin.

Bahasa Pemograman/Bahasa Manusia

Merupakan high level language -> user oriented. Contoh : cobol, portran, pascal, C, C++, dll. Disebut bahasa tingkat tinggi karena memberikan fasilitas yang lebih banyak, kontrol program yang terstruktur, dan mudah dipahami manusia.

Bahasa Assembly

Merupakan bentuk simbolik dari bahasa mesin, setiap code operasi program memiliki kode simbolik. Contoh :

penjumlahan : ADD (addition)

perkalian : MUL (multiplication)

Pada bahasa assembly tersedia alat bantu untuk debug yang tidak terdapat pada bahasa mesin. contoh : turbo assembler dari borland, marco assembler dari microsoft

Bahasa yang Problem Oriented

Memungkinkan penyelesaian untuk suatu masalah dengan aplikasi yang lebih spesifik. Contoh :

Database : SQL, Oracle, Acess, dll

Multimedia : Flash Mx,Corel draw, dll

Arsitek : Autocad, 3D Max, Cogo

MODEL KOMPILATOR

Sebuah kompilator umumnya dibedakan atas 2 :

  1. Fungsi analisis (Front End). Bertugas melakukan dekomposisi program sumber menjadi bagian-bagian dasarnya.
  2. Fungsi synthesis (Back End). Bertugas melakukan pembangkitan kode dan optimasi program object.

model kompilator

Keterangan :

  1. Scanner, memecah program sumber menjadi besaran leksikal.
  2. Parser, memeriksa kebenaran dan urutan kemunculan token.
  3. Analisis Semantic, melakukan analisa semantic biasanya dalam realisasi akan digabungkan dengan intermediate, code generator atau bagian yang berfungsi membangkitkan kode antara.
  4. Code generator, untuk membangkitkan kode objek.
  5. Code optimizer, untuk memperkecil hasil dan mempercepat proses.
  6. Tabel simbol, menyimpan semua informasi yang berhubungan dengan proses kompilasi.

Mode Pengalamatan

Setelah membahas memori, cache, set instruksi. Ada baiknya sahabat wikara mengetahui mode pengalamatan pada instruksi dalam memori. Mode pengalamatan merupakan metode penentuan alamat operand pada instruksi. Operand instruksi diletakan pada memori utama dan register CPU. Tujuan yang mempengaruhi arsitektur komputer ketika memilih mode pengalamatan:

  • Mengurangi panjang instruksi dengan mempunyai medan yang pendek untuk alamat.
  • Menyediakan bantuan yang tangguh kepada pemrogram untuk penanganan data kompleks seperti pengindeksan sebuah array, control loop, relokasi program dan sebagainya.

Teknik Pengalamatan

  1. Immediate Addressing
  2. Direct Addressing
  3. Indirect Addressing
  4. Register addressing
  5. Register indirect addressing
  6. Displacement addressing
  7. Stack addressing

tabel basic aderssing model

gambar addressing modeA. Immediate Addressing (Pengalamatan Segera)

Adalah bentuk pengalamatan yang paling sederhana.

Penjelasan :

  • Operand benar-benar ada dalam instruksi atau bagian dari intsruksi
  • Operand sama dengan field alamat
  • Umumnya bilangan akan disimpan dalam bentuk complement dua
  • Bit paling kiri sebagai bit tanda
  • Ketika operand dimuatkan ke dalam register data, bit tanda digeser ke kiri hingga maksimum word data

Keuntungan :

  • Tidak adanya referensi memori selain dari instruksi yang diperlukan untuk memperoleh operand
  • Menghemat siklus instruksi sehingga proses keseluruhanakan akan cepat

Kekurangan :

  • Ukuran bilangan dibatasi oleh ukuran field

Contoh :

ADD 7 ; tambahkan 7 pada akumulator

B. Direct Addressing (Pengalamatan Langsung)

Penjelasan :

  • Teknik ini banyak digunakan pada komputer lama dan komputer kecil
  • Hanya memerlukan sebuah referensi memori dan tidak memerlukan kalkulus khusus

Kelebihan :

  • Field alamat berisi efektif address sebuah operand

Kekurangan :

  • Keterbatasan field alamat karena panjang field alamat biasanya lebih kecil dibandingkan panjang word

Contoh :

ADD A ; tambahkan isi pada lokasi alamat A ke akumulator

b

C. Indirect Addressing (Pengalamatan tak langsung)

Penjelasan :

  • Merupakan mode pengalamatan tak langsung
  • Field alamat mengacu pada alamat word di alamat memori, yang pada gilirannya akan berisi alamat operand yang panjang

Kelebihan :

  • Ruang bagi alamat menjadi besar sehingga semakin banyak alamat yang dapat referensi

Kekurangan :

  • Diperlukan referensi memori ganda dalam satu fetch sehingga memperlambat proses operasi

Contoh :

ADD (A) ; tambahkan isi memori yang ditunjuk oleh isi alamat A ke akumulator

c

D. Register addressing (Pengalamatan Register)

Penjelasan :

  • Metode pengalamatan register mirip dengan mode pengalamatan langsung
  • Perbedaanya terletak pada field alamat yang mengacu pada register, bukan pada memori utama
  • Field yang mereferensi register memiliki panjang 3 atau 4 bit, sehingga dapat mereferensi 8 atau 16 register general purpose

Keuntungan :

  • Diperlukan field alamat berukuran kecil dalam instruksi dan tidak diperlukan referensi memori
  • Akses ke register lebih cepat daripada akses ke memori, sehingga proses eksekusi akan lebih cepat

Kerugian :

  • Ruang alamat menjadi terbatas

Contoh :

d

E. Register indirect addressing (Pengalamatan tak-langsung register)

Penjelasan :

  • Metode pengalamatan register tidak langsung mirip dengan mode pengalamatan tidak langsung
  • Perbedaannya adalah field alamat mengacu pada alamat register
  • Letak operand berada pada memori yang dituju oleh isi register
  • Keuntungan dan keterbatasan pengalamatan register tidak langsung pada dasarnya sama dengan pengalamatan tidak langsung
  • Keterbatasan field alamat diatasi dengan pengaksesan memori yang tidak langsung sehingga alamat yang dapat direferensi makin banyak
  • Dalam satu siklus pengambilan dan penyimpanan, mode pengalamatan register tidak langsung hanya menggunakan satu referensi memori utama sehingga lebih cepat daripada mode pengalamatan tidak langsung

Contoh :

e

F. Displacement addressing

Penjelasan :

  • Menggabungkan kemampuan pengalamatan langsung dan pengalamatan register tidak langsung
  • Mode ini mensyaratkan instruksi memiliki dua buah field alamat, sedikitnya sebuah field yang eksplisit
  • Operand berada pada alamat A ditambahkan isi register
  • Tiga model displacement
    • Relative addressing : register yang direferensi secara implisit adalah Program Counter (PC)
      • Alamat efektif didapatkan dari alamat instruksi saat itu ditambahkan ke field alamat
      • Memanfaatkan konsep lokalitas memori untuk menyediakan operand-operand berikutnya
    • Base register addressing : register yang direferensi berisi sebuah alamat memori dan field alamat berisi perpindahan dari alamat itu
      • Referensi register dapat eksplisit maupun implisit
      • Memanfaatkan konsep lokalitas memori
    • Indexing  : field alamat mereferensi alamat memori utama, dan register yang direferensikan berisi pemindahan positif dari alamat tersebut
      • Merupakan kebalikan dari mode base register
      • Field alamat dianggap sebagai alamat memori dalam indexing
      • Manfaat penting dari indexing adalah untuk eksekusi program-pprogram iteratif

Contoh :

Field eksplisit bernilai A dan field imlisit mengarah pada register

f

G. Stack addressing

Penjelasan :

  • Stack adalah array lokasi yang linier = pushdown list = last-in-firs-out
  • Stack merupakan blok lokasi yang terbaik
    • Btir ditambahkan ke puncak stack sehingga setiap blok akan terisi secara parsial
  • Yang berkaitan dengan stack adalah pointer yang nilainya merupakan alamat bagian paling atas stack
  • Dua elemen teratas stack dapat berada di dalam register CPU, yang dalam hal ini stack pointer mereferensi ke elemen ketiga stack
  • Stack pointer tetap berada dalam register
  • Dengan demikian, referensi-referensi ke lokasi stack di dalam memori pada dasarnya merupakan pengalamatan register tidak langsung

Set Instruksi

Mari kita bahas mengenai instruksi yang terdapat dalam komputer.  Set Instruksi merupakan sekumpulan lengkap instruksi yang dapat dimengerti oleh sebuah CPU. Elemen-elemen Instruksi diantaranya :

  1. Operation code (Op code) : berisikan perintah yang akan dikerjakan
  2. Source Operand reference : lokasi data yang harus dikerjakan sesuai perintah
  3. Result Operand reference : Penyimpan hasil operasi
  4. Next Instruction Reference : Perintah selanjutya yang harus diselesaikan
Setiap instruksi tidak harus memiliki semua elemen. Kelengkapan elemen tergantung dari jenis dan kebutuhan. Instruksi dilaksanakan pada CPU Register, memori utama, cache dan modul I/O digunakan sebagai media penyimpan nilai operand.
Representasi Instruksi
Menemonic merupakan simbol yang digunakan sebagai instruksi untuk mempermudah pengguna dalam beradaptasi dengan bahasa mesin. Contoh: ADD, SUB, MPY, DIV, LOAD, STOR.
Jenis-jenis Instruksi
  • Data processing:
  1. Aritmetik  misal : ADD, SUB dll.
  2. Logic missal : AND, OR, NOT, SHR, dll.
  3. Konversi data
  • Data storage (memori):
  1. Transfer data missal : STOR, LOAD, MOVE, dll.
  • Data movement: Input dan Output ke modul I/O
  • Program flow control: JUMP, HALT, dll.
Jenis Format Instruksi
  • Format Instruksi 3 alamat [OPCODE] [AH], [AO1], [AO2] : 1 alamat hasil [AH]  dan 2 alamat operand [AO…]
  • Format Instruksi 2 alamat   [OPCODE] [AH], [AO] : 1 alamat hasil merangkap operand dan 1 alamat operand murni
  • Format Instruksi 1 alamat  [OPCODE] [AO] : 1 alamat operand dan hasil disimpan pada  accumulator

Unit Keluaran/Masukan

Sahabat wikara, Selain memori yang telah dibahas pena wikara sebelumnya, kali ini pena wikara akan membahas Unit Keluaran / Masukan. Sistem komputer memiliki tiga komponen utama, yaitu : CPU, memori (primer dan sekunder), dan peralatan masukan/keluaran (I/O devices) seperti printer, monitor, keyboard, mouse, dan modem. Beberapa bab sebelumnya telah membahas CPU dan memori, sekarang akan kita jelaskan tentang peralatan atau modul I/O pada bab ini.

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.
Ada beberapa alasan kenapa piranti – piranti tidak langsung dihubungkan dengan bus sistem komputer, yaitu :

  • Bervariasinya metode operasi piranti peripheral, sehingga tidak praktis apabila sistem komputer herus menangani berbagai macam sisem operasi piranti peripheral tersebut.
  • Kecepatan transfer data piranti peripheral umumnya lebih lambat dari pada laju transfer data pada CPU maupun memori.
  • Format data dan panjang data pada piranti peripheral seringkali berbeda dengan CPU, sehingga perlu modul untuk menselaraskannya.

Dari beberapa alasan diatas, modul I/O memiliki dua buah fungsi utama, yaitu :

  1. Sebagai piranti antarmuka ke CPU dan memori melalui bus sistem.
  2. Sebagai piranti antarmuka dengan peralatan peripheral lainnya dengan menggunakan link data tertentu.

Sistem Masukan dan 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. Gambar di bawah ini menyajikan model generik modul I/O.

model modul IO

Fungsi 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 antarmuka 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.

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 kontrol pemindahan data dari peripheral ke CPU melalui sebuah modul I/O dapat meliputi langkah – langkah berikut ini :

  1. Permintaan dan pemeriksaan status perangkat dari CPU ke modul I/O.
  2. Modul I/O memberi jawaban atas permintaan CPU.
  3. Apabila perangkat eksternal telah siap untuk transfer data, maka CPU akan mengirimkan perintah ke modul I/O.
  4. Modul I/O akan menerima paket data dengan panjang tertentu dari peripheral.
  5. 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.

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.

Struktur Modul I/O

Terdapat berbagai macam modul I/O seiring perkembangan komputer itu sendiri, contoh yang sederhana dan fleksibel adalah Intel 8255A yang sering disebut PPI (Programmable Peripheral Interface).

struktur io

Teknik Masukan/Keluaran

Terdapat tiga buah teknik dalam operasi I/O, yaitu: I/O terprogram, interrupt – driven I/O, dan DMA (Direct Memory Access).

  • I/O Terprogram

Pada 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.

Dalam teknik I/O terprogram, terdapat dua macam inplementasi perintah I/O yang tertuang dalam instruksi I/O, yaitu: memory-mapped I/O dan isolated I/O. Dalam memory-mapped I/O, terdapat ruang tunggal untuk lokasi memori dan perangkat I/O. CPU memperlakukan register status dan register data modul I/O sebagai lokasi memori dan menggunakan instruksi mesin yang sama untuk mengakses baik memori maupun perangkat I/O. Konskuensinya adalah diperlukan saluran tunggal untuk pembacaan dan saluran tunggal untuk penulisan. Keuntungan memory mapped I/O adalah efisien dalam pemrograman, namun memakan banyak ruang memori alamat. Dalam teknik isolated I/O, dilakukan pemisahan ruang pengalamatan bagi memori dan ruang pengalamatan bagi I/O. Dengan teknik ini diperlukan bus yang dilengkapi dengan saluran pembacaan dan penulisan memori ditambah saluran perintah output. Keuntungan isolated I/O adalah sedikitnya instruksi I/O.

  • Interrupt – Driven I/O

Teknik interrupt – driven I/O memungkinkan proses tidak membuang – buang waktu. Prosesnya adalah CPU mengeluarkan perintah I/O pada modul I/O, bersamaan perintah I/O dijalankan modul I/O maka CPU akan melakukan eksekusi perintah – perintah lainnya. Apabila modul I/O telah selesai menjalankan instruksi yang diberikan padanya akan melakukan interupsi pada CPU bahwa tugasnya telah selesai. Dalam teknik ini kendali perintah masih menjadi tanggung jawab CPU, baik pengambilan perintah dari memori maupun pelaksanaan isi perintah tersebut. Terdapat selangkah kemajuan dari teknik sebelumnya, yaitu CPU melakukan multitasking beberapa perintah sekaligus sehingga tidak ada waktu tunggu bagi CPU. Cara kerja teknik interupsi di sisi modul I/O adalah modul I/O menerima perintah, misal read. Kemudian modul I/O melaksanakan perintah pembacaan dari peripheral dan meletakkan paket data ke register data modul I/O, selanjutnya modul mengeluarkan sinyal interupsi ke CPU melalui saluran kontrol. Kemudian modul menunggu datanya diminta CPU. Saat permintaan terjadi, modul meletakkan data pada bus data dan modul siap menerima perintah selanjutnya. Pengolahan interupsi saat perangkat I/O telah menyelesaikan sebuah operasi I/O adalah sebagai berikut :
1. Perangkat I/O akan mengirimkan sinyal interupsi ke CPU.
2. CPU menyelesaikan operasi yang sedang dijalankannya kemudian merespon interupsi.
3. CPU memeriksa interupsi tersebut, kalau valid maka CPU akan mengirimkan sinyal acknowledgment ke perangkat I/O untuk menghentikan interupsinya.

CPU mempersiapkan pengontrolan transfer ke routine interupsi. Hal yang dilakukan adalah menyimpan informasi yang diperlukan untuk melanjutkan operasi yang tadi dijalankan sebelum adanya interupsi. Informasi yang diperlukan berupa:
a. Status prosesor, berisi register yang dipanggil PSW (program status word).
b. Lokasi intruksi berikutnya yang akan dieksekusi. Informasi tersebut kemudian disimpan dalam stack pengontrol sistem.
5. Kemudian CPU akan menyimpan PC (program counter) eksekusi sebelum interupsi ke stack pengontrol bersama informasi PSW. Selanjutnya mempersiapkan PC untuk penanganan interupsi.
6. Selanjutnya CPU memproses interupsi sempai selesai.
7. Apabila pengolahan interupsi selasai, CPU akan memanggil kembali informasi yang telah disimpan pada stack pengontrol untuk meneruskan operasi sebelum interupsi.

Terdapat bermacam teknik yang digunakan CPU dalam menangani program interupsi ini, diantaranya :
• Multiple Interrupt Lines.
• Software poll.
• Daisy Chain.
• Arbitrasi bus.

  • Direct Memory Access (DMA)

Teknik yang dijelaskan sebelumnya yaitu I/O terprogram dan Interrupt-Driven I/O memiliki kelemahan, yaitu proses yang terjadi pada modul I/O masih melibatkan CPU secara langsung. Hal ini berimplikasi pada :
• Kelajuan transfer I/O yang tergantung pada kecepatan operasi CPU.
• Kerja CPU terganggu karena adanya interupsi secara langsung.

Bertolak dari kelemahan di atas, apalagi untuk menangani transfer data bervolume besar dikembangkan teknik yang lebih baik, dikenal dengan Direct Memory Access (DMA). Prinsip kerja DMA adalah 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. Dengan demikian CPU dapat menjalankan proses lainnya tanpa banyak terganggu dengan interupsi.

Perangkat Eksternal

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 tergolang dalam perangkat eksternal komputer. Perangkat eksternal atau lebih umum disebut peripheral tersambung dalam sistem CPU melalui perangat pengendalinya, yaitu modul I/O seperti telah dijelaskan sebelumnya. Secara umum perangkat eksternal diklasifikasikan menjadi 3 katagori:
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. Pengklasifikasian juga bisa berdasarkan arah datanya, yaitu perangkat output, perangkat input dan kombinasi output-input. Contoh perangkat output: monitor, proyektor dan printer. Perangkat input misalnya: keyboard, mouse, joystick, scanner, mark reader, bar code reader.