Thursday, February 22, 2018



TUGAS DAN FUNGSI FLOWCHAT, OPERAND, DATA MOVEMENT, SINKRONISASI, EXECUTING, DECODING, dan FLETCHING

Assalamualaikum wr.wb 
 
FLOWCHART
Fungsi Flowchart adalah untuk menggambarkan, menyederhanakan rangkaian proses atau prosedur sehingga mudah dipahami dan mudah dilihat berdasarkan urutan langkah dari suatu proses.
Definisi dari Flowchart yaitu bagan  (chart) yang menunjukkan alir  (flow) di dalam program atau prosedur sistem secara logika.
1. Manfaat Flowchart
  • Sebagai Dokumentasi Prosedur Kerja dalam ISO
  • Sebagai pedoman untuk menjalankan Operasional
  • Sebagai pedoman untuk melakukan pelatihan terhadap Karyawan baru
  • Sebagai benchmark (patokan)
  • Sebagai Peta kerja untuk mencegah terjadi kehilangan arah
  • Untuk mempermudah pengambilan keputusan
2. Jenis Flowchart
  1. System Flowchart – menjelaskan urut-urutan dari prosedur-prosedur dan menunjukkan apa yang dikerjakan di sistem.
  2. Document Flowchart – menunjukkan arus dari laporan dan formulir termasuk lampirannya, dikenal juga dengan sebutan paperwork flowchart.
  3. Schematic Flowchart – untuk menggambarkan prosedur di dalam sistem dan menggunakan simbol flowchart.
  4. Program Flowchart – untuk menjelaskan secara rinci langkah-langkah dari proses program, terdiri dari dua macam, yaitu bagan alir logika program  (program logic flowchart)  dan bagan alir program komputer terinci  (detailed computer program flowchart).
  5. Process Flowchart – Bagan alir ini juga berguna bagi analis sistem untuk menggambarkan proses dalam suatu prosedur.
3. Contoh Flowchart

Contoh Flowchart mencari bilangan ganjil dan genap


OPERAND
Pengertian Operand dan Operator
Dalam bahasa pemograman, terdapat istilah operand dan operator. Operand adalah nilai asal yang digunakan didalam proses operasi, sedangkan operator adalah instruksi yang diberikan untuk mendapatkan hasil dari proses tersebut.
Contohnya, operasi: 5+2. Angka 5 dan 2 adalah operand, sedangkan tanda tambah (karakter +) adalah operator. Beberapa operator bisa mengubah nilai dari operandnya sendiri, walaupun kebanyakan hanya sebagai penghubung antar operand. Operator di dalam PHP banyak meminjam contoh karakter dari bahasa C dan Perl.

Jenis Operator Berdasarkan Jumlah Operand
Berdasarkan jumlah operand, operator dapat dibedakan menjadi 3, yaitu Operator Unary, Binary dan Ternary.
  • Operator unary adalah operator yang hanya memiliki 1 operand, contohnya karakter – (tanda minus). Tanda minus digunakan membuat sebuah angka menjadi negatif, contohnya: -5, atau karakter + untuk menegaskan nilai positif, contohnya: +5.
  • Operator binary adalah operator yang memiliki 2 operand. Operator jenis ini adalah yang paling banyak digunakan, misalkan 5×2, atau 10/3.
  • Operator Ternary adalah operator yang memiliki 3 operand. Didalam PHP hanya dikenal 1 operator ternary, yaitu operator kondisi (? :). Kita akan mempelajari operator ini dalam tutorial selanjutnya.

Set instruksi (instruction set) adalah sekumpulan lengkap instruksi yang dapat di mengerti oleh sebuah CPU, set instruksi sering juga disebut sebagai bahasa mesin (machine code), karna aslinya juga berbentuk biner kemudian dimengerti sebagai bahasa assembly, untuk konsumsi manusia (programmer), biasanya digunakan representasi yang lebih mudah dimengerti oleh manusia.
Sebuah instruksi terdiri dari sebuah opcode, biasanya bersama dengan beberapa informasi tambahan seperti darimana asal operand-operand dan kemana hasil-hasil akan ditempatkan. Subyek umum untuk menspesifikasikan di mana operand-operand berada (yaitu, alamat-alamatnya) disebut pengalamatan
DESAIN SET INSTRUKSI
Desain set instruksi merupakan masalah yang sangat komplek yang melibatkan banyak aspek, diantaranya adalah:
  1. Kelengkapan set instruksi
  2. Ortogonalitas (sifat independensi instruksi)
  3. Kompatibilitas : – Source code compatibility – Object code Compatibility
Selain ketiga aspek tersebut juga melibatkan hal-hal sebagai berikut:
  1. Operation Repertoire: Berapa banyak dan operasi apa saja yang disediakan, dan berapa sulit operasinya
  2. Data Types: tipe/jenis data yang dapat olah Instruction Format: panjangnya, banyaknya alamat, dsb.
  3. Register: Banyaknya register yang dapat digunakan 4.Addressing: Mode pengalamatan untuk operand
FORMAT INSTRUKSI 
* Suatu instruksi terdiri dari beberapa field yang sesuai dengan elemen dalam instruksi tersebut. Layout dari suatu instruksi sering disebut sebagai Format Instruksi (Instruction Format).
OPCODE OPERAND REFERENCE OPERAND REFERENCE JENIS-JENIS OPERAND 
* Addresses (akan dibahas pada addressing modes)
* Numbers : – Integer or fixed point – Floating point – Decimal (BCD)
* Characters : – ASCII – EBCDIC
* Logical Data : Bila data berbentuk binary: 0 dan 1


DATA MOVEMENT
  Fungsi pengolahan data (Data processing):  Komputer sebagai alat untuk mengolah data yaitu untuk mengolah data yang telah kita buat dan akan dip roses di CPU. Jika kita ingin membuka kembali program yang kita buat computer akan mengolah dan membuka program yang telah kita buat. Contoh: updating bank statement.
  Fungsi penyimpanan data (Data storage):  Komputer sebagai alat untuk penimpanan data yaitu untuk menyimpan data yang telah dibuat dan akan bisa membuka kembali file yang telah kita buat. Contoh: download dari internet.                           
  Fungsi pemindahan  data (Data movement): Komputer sebagai alat untuk pemindahan data yaitu untuk  pemindahan data yang telah dibuat dan akan bisa membuka kembali file yang telah kita buat dengan cara mengcopy paste file yang telah kita buat. Contoh: dari keyboard ke layar monitor.   
  Fungsi kendali  (Control): Komputer sebagai alat kendali data yaitu untuk mengatur data yang telah dibuat maupun yang akan dibuat dan akan bisa membuka kembali file yang telah kita buat. Dan bisa mengendalikan apa yang kita perintahkan melalui keyboard dan lain lain.


SINKRONISASI
   Sinkronisasi merupakan suatu proses secara bersama sama dan saling berbagi data bersama dapat mengakibatkan race condition atau inkosistensi data.
Sinkornisasi di perlukan untuk menghindari terjadinya ketidak konsistenan data akibat adanya akses secara konkuren.
Proses-Proses tersebut disebut konkukuren jika Proses itu ada dan berjalan pada waktu yang bersamaan.
perangkat Sinkronisasi adalah:
Intruksi Test-and-set adalah Intuksi atomik yang dapat dihunakan untuk menangani masalah Critical Section.
test send set dapat dianalogikan dengan kode dibawah ini:
function test-and-set (var target; boolean) boolean;
begin
test-and-set ; = target:
target : = true ;
end

Semafor merupakan sebuah variabel yang hanya dapat di akses oleh dua buah operasi standar yaitu increment dan decrement.
Monitor digunakan untuk menangani masalah yang akan muncul karna pemakai semafor.
JVM iyalah mengimplementasikan monitor. monitor JVM dapat digunakan menggunakan keyword synchronized
manfaat Sinkronisasi iyalah:
sebagai penyimpanan data sementara dan non sementara agar dapat mempermudah pekerjaan.
Masalah pada  Sinkronisasi  terdapat dari masalah lainnya, seperti  Masalah
Race Condition  dan Critical Section. 
Race Condition
Race Condition merupakan suatu kondisi dimana dua atau lebih proses mengakses sumber daya secara bersama sama.
Cara Menghindari Race Condition
Jika suatu proses sedang menjalankan Critical Section, maka proses lain tidak bisa masuk kedalam Critical Section tersebut.

Pengertian Critical Section
Critical Section merupakan suatu kode segmen dari proses-proses yang memungkinkan terjadinya Race Condition.
beberapa kode dalam Critical Section , kode tersebut iyalah :
Entry Section : kode yang difungsikan untuk masuk ke dalam critical section
Critical Section : di mana kode ini hanya ada dalam satu proses yang dapat dieksekusi pada satu waktu.
Exit Section: akhir dari critical section, dan mengizinkan proses lain.
Remainder Section : kode istirahat setelah masuk ke proses critical section.
Solusi Critical Section adalah:
Mutual Exclusion : Jika proses pi sedang mengeksekusi critical section-nya maka tidak ada proses lain yang dapat mengeksekusi dalam critical section mereka.)
terjadinya Kemajuan (Progress) : Jika tidak ada proses yang sedang dieksekusi dalam critical section dan ada beberapa proses yang ingin masuk ke critical section mereka, maka pemilihan proses yang akan masuk ke critical section berikutnya tidak bias ditunda.
Adanya batas waktu tunggu (bounded waiting) : Suatu keterikatan harus ada pada sejumlah proses yang diijinkan masuk ke critical section mereka, setelah adanya proses yang meminta masuk ke critical section dan sebelum permintaan itu diterima.
Critical Section dalam kernel adalah:
Interupsi :
Interupsi merupakan pusat pada sistem operasi, yang menyediakan cara efisien bagi sistem operasi untuk berinteraksi terhadap lingkungannya. Pemrograman berbasis interupsi secara langsung didukung hampir dengan seluruh CPU modern.
Page Fault:
Page fault merupakan exception untuk permintaan alokasi page ke memori. Dalam konteks memori maya, page fault sering disingkat fault.
Kernel code memanggil fungsi penjadwalan sendiri.
Critical Section mempunyai beberapa kode :
Entry Section : kode yang digunakan untuk masuk ke dalam critical section
Critical Section : Kode di mana hanya ada satu proses yang dapat dieksekusi pada satu waktu.
Exit Section: akhir dari critical section, mengizinkan proses lain.
Remainder Section : kode istirahat setelah masuk ke critical section 




Fetch . Decode . Execute. Store

Sebuah siklus instruksi (juga disebut mengambil-decode-execute siklus, dan FDX) adalah periode waktu di mana komputer proses sebuah mesin bahasa instruksi dari perusahaan memori atau urutan tindakan bahwa unit pengolahan pusat ( CPU) melakukan untuk menjalankan setiap kode mesin instruksi dalam sebuah program. 
siklus tidak pernah digunakan pada CPU. 
Nama mengambil dan execute siklus yang umum digunakan. from instruksi harus diambil dari memori utama , dan kemudian dieksekusi oleh CPU. Ini pada dasarnya bagaimana komputer beroperasi, dengan CPU yang membaca dan melaksanakan serangkaian instruksi yang ditulis dalam bahasa mesin-nya. Dari ini muncul semua fungsi dari sebuah komputer dikenal dari ujung pengguna.

Setiap CPU komputer dapat memiliki siklus yang berbeda berdasarkan set instruksi yang berbeda.


   Mengambil instruksi 
    CPU menyajikan nilai dari program counter (PC) di bus alamat. CPU kemudian menjemput instruksi dari memori utama melalui bus data ke memori dari MDR tersebut kemudian ditempatkan ke dalam register instruksi saat ini (CIR), sebuah sirkuit yang menyimpan instruksi sementara sehingga dapat diterjemahkan dan dieksekusi.

·        Decode instruksi 
    Decoder instruksi menafsirkan dan mengimplementasikan instruksi. memegang instruksi saat ini, sementara program counter (PC) memiliki alamat dalam memori dari instruksi berikutnya akan dieksekusi.

·        Ambil data dari memori utama 
        Baca alamat efektif dari memori utama jika instruksi memiliki alamat tidak langsung Fetch diperlukan data dari memori utama untuk diproses dan tempat ke dalam register data.

·        Jalankan instruksi 
        Dari daftar instruksi, data yang membentuk instruksi ini diterjemahkan oleh unit kontrol . Kemudian melewati informasi dekode sebagai urutan sinyal kontrol ke unit fungsi yang relevan dari CPU untuk melakukan tindakan yang dibutuhkan oleh instruksi seperti membaca nilai dari register, melewati mereka ke unit aritmatika logika (ALU) untuk menambahkan mereka bersama-sama dan menulis hasilnya kembali ke register. Sebuah kondisi sinyal dikirim kembali ke unit kontrol oleh ALU jika terlibat.

·        Toko Hasil 
      Juga disebut menulis kembali ke memori.  Hasil yang dihasilkan oleh operasi disimpan dalam memori utama, atau dikirim ke perangkat output. Berdasarkan kondisi umpan balik dari ALU, PC sedang bertambah baik ke alamat instruksi berikutnya atau diperbarui ke alamat yang berbeda di mana instruksi berikutnya akan diambil. siklus tersebut kemudian diulang.

·        Siklus Fetch 
       Langkah 1 dan 2 dari Siklus Instruksi disebut Siklus Fetch.. Langkah-langkah yang sama untuk setiap instruksi.. Proses siklus ini mengambil instruksi dari kata instruksi yang berisi opcode dan operan sebuah.

·        Siklus Execute  
       Langkah 3 dan 4 dari Siklus Instruksi merupakan bagian dari Siklus Execute. Langkah-langkah ini akan berubah dengan setiap instruksi. 
        Langkah pertama dari siklus eksekusi adalah Proses-Memori. Data ditransfer antara CPU dan I / O modul.. Berikutnya adalah Data-Pengolahan menggunakan operasi matematika serta operasi logis dalam referensi data. Central perubahan adalah langkah berikutnya, adalah sebuah urutan operasi, misalnya operasi melompat. Langkah terakhir adalah sebuah operasi gabungan dari semua langkah lainnya.
    Terima kasih udah mampir next materi lagi ceck trs ya :D 
  Wassalamualaikum wr.wb








Leave a Reply

Subscribe to Posts | Subscribe to Comments

loading...

- Copyright © ACP ( Materi TKJ) - Blogger Templates - Powered by Blogger - Designed by Johanes Djogan -