UJIAN AKHIR SEMESTER II - ORGANISASI DAN SISTEM KOMPUTER KAMPUS MILENIAL ITBI

NAMA        : FAZASOKHI GIAWA

KELAS       : MALAM

JURUSAN  : TEKNIK INFORMATIKA


SOAL : 

1. Jelaskan pengertian Set Instruksi dalam ilmu komputer (Slide Pertemuan 12)

2. Sebutkan operasi set instruksi untuk arithmetic beserta fungsinya (Slide Pertemuan 12)

3. Jelaskan cara kerja dari Modul I/O secara umum pada sistem komputer. (Slide Pertemuan 10)

4. Apa yang dimaksud dengan Modul Input dan Output (Modul I/O) pada Sistem Komputer? (Slide Pertemuan 10)

5. Jelaskan Perbedaan translator compiler dan translator interpreter (Slide Pertemuan 13)

6. Jelaskan siklus Fetch – Eksekusi Instruksi pada CPU pada umumnya. (Slide Pertemuan 11)

7. Saat ini pemrosesan data pada Komputer/Laptop/PC yang berkembang dan terkenal di Indonesia adalah AMD dan Intel. Berikan penjelasan keunggulan kedua prosesor tersebut.

8. Jelaskan fase-fase dari sebuah proses kompilasi (Slide Pertemuan 13)

9. Selesaikan operasi arimetika berikut menggunakan format instruksi 3 alamat assembly dan hitung jumlah operasinya






a). (A x D) / (B – C) + E)
b).  A / B – D / E + C
c).  A / (B – D + C)
d). A + B / (C + D) x E

10. Coba terjemahkan bilangan Desimal berikut ke bilangan Biner dengan panjang 8 bit atau sebaliknya

1). 8710 =.....

2). 9810 = ...

3). 10010 = ...

4). 0000 11002 = ...


JAWAB : 

1. Set  instruksi  ialah sebagai suatu  aspek dalam  arsitektur komputer  yang  dapat  dilihat  oleh  para  pemrogram.  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.

2.  Operasi set instruksi untuk arithmetic beserta fungsinya

a).  ADD : Penjumlahan, berfungsi  menghitung jumlah dari dua operand

b).  SUBTRACT : Pengurangan , berfungsi menghitung selisih dua bilangan

c). MULTIPLY : Perkalian , Berfungsi  menghitung hasil kali dari dua operand

d). DIVIDE : Pembagian , berfungsi menghitung hasil bagi dan sisa pembagian dari dua

     bilangan

e).  ABSOLUTE : absolut, berfungsi  Mengambil nilai absolut

f). NEGATIVE : negatif, berfungsi mengganti tanda operand

g). DECREMENT : Menambah,  berfungsi menambahkan 1 pada operand

h). INCREMENT  : Mengurangi, berfungsi mengurangkan  1 dari operand

3.  Cara kerja Modul I/O sebagai berikut :

  v  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.
v  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.
v  diperlukan antarmuka internal dengan komputer (CPU dan memori utama) dan antarmuka dengan perangkat eksternalnya untuk menjalankan fungsi – fungsi pengontrolan.
v  Menjalankan tugas bagi modul I/O dapat dibagi menjadi beberapa kategori, yaitu:
-Kontrol dan pewaktuan.
-Komunikasi CPU.
-Komunikasi perangkat eksternal.
-Pem-buffer-an data.
-Deteksi kesalahan.
v  Menjalankan atau mengontrol /pewaktuan (control & timing) dalam berbagai 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 tersebutbisa 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 :
v  Menjalankan permintaan dan pemeriksaan status perangkat dari CPU ke modul I/O.
v  Modul I/O memberi jawaban atas permintaan CPU.
v  Apabila perangkat eksternal telah siap untuk transfer data, maka CPU akan mengirimkan perintah ke modul I/O.
v  Modul I/O menjalankan atau menerima paket data dengan panjang tertentu dari peripheral.
v  mengirim data ke CPU setelah diadakan sinkronisasi panjang data dan kecepatan transfer oleh modul I/O sehingga paket – paket data dapat diterima CPU dengan baik.
v  Misalnya, sebuah modul I/Ountuk disk dapat menerima perintah: Read sector, Scan record ID, Format disk.

4.  Modul I/O (Input/Output) Adalah interface atau central switch untuk mengendalikan satu atau lebih peripheral atau perangkat input output. Konektor mekanis berisi fungsi logik untuk komunikasi antara bus dan peripheral. Operasi – operasi I/O diperoleh melalui sejumlah perangkat eksternal yang menyediakan alat untuk pertukaran data di antara lingkungan luar dan komputer.

5. Perbedaan translator compiler dan translator interpreter

a). Translator Compiler

Compiler atau Kompilator merupakan sebuah program komputer yang berfungsi untuk menerjemahkan program komputer yang ditulis dalam bahasa pemrograman tertentu menjadi program yang di tulis dalam bahasa pemrogrman lain salah satunya adalah C++, atau Compiler atau Kompilator adalah perangkat lunak yang digunakan untuk mengubah source code / kode pemrograman menjadi bahasa mesin agar dapat dijalankan oleh komputer.

Istilah Compiler biasa  digunakan untuk program komputer yang menerjemahkan program yang ditulis dalam bahasa pemrograman tingkat tinggi (Contoh bahasa C++, Pascal, FORTRAN, Visual C#, COBOL, Visual Basic, Java, atau xBase) diterjemahkan menjadi bahasa mesin, biasanya menggunakan bahasa Assembly sebagai perantara. salah satu contoh Compiler dalam Bahasa C++ adalah Visual C++, GNU Compiler Collection (GCC) dan Borland C++.

b). Translator Interpreter

Interpreter adalah Perangkat lunak yang mampu mengeksekusi code program (yang ditulis oleh programmer) lalu menterjemahkannya ke dalam bahasa mesin, sehingga mesin melakukan instruksi yang diminta oleh programmer tersebut. Perintah-perintah yang dibuat oleh programmer tersebut dieksekusi baris demi baris, sambil mengikuti logika yang terdapat di dalam kode tersebut.

Proses ini sangat berbeda dengan compiler, dimana pada compiler, hasilnya sudah langsung berupa satu kesatuan perintah dalam bentuk bahasa mesin, dimana proses penterjemahan dilaksanakan sebelum program tersebut dieksekusi.

6. Siklus Fetch – Eksekusi Instruksi pada CPU pada umumnya

Pada awal setiap siklus instruksi, CPU membacainstruksi dari memori. Pada CPU yang umum, sustu register yang disebut program counter (PC) dipakai untuk mengawasi instruksi yang akan dibaca selanjutnya secara berurutan yaitu instruksi yang terletak pada alamat yang lebih tinggi berikutnya, didalam memori.

Contoh berikut adalah cara CPU mengeksekusi program (3 siklus fetch dan 3 eksekusi) :

  1. Program Counter (PC) berisi 300 [alamat instruksi pertama]. Kemudian alamat ini dimuatkan kedalama instruction register (IR). Sedangkan memori addres register (MAR) dan memory Buffer register (MBR) diabaikan dulu.
  2. 4 bit pertama di dalam IR (ingat, format instruksi 16 bit) mengindikasikan bahwa akumulator (AC) akan dimuatkan. 12 bit sisanya menentukan alamat dalam memori, yaitu 940.
  3. PC dinaikkan nialinya, instruksi berikutnya akan diambil
  4. Isi AC yang lama dan isi lokasi 941 ditambahkan, dan hasilnya disimpan didalam AC
  5. PC dinaikkan nilainya, instruksi berikutnya akan diambil
  6. Isi AC akan disimpan pada lokais 941.
Supaya lebih jelas dri siklus tersebut perhatikan gambar berikut  :

Dan untuk memudahkan pemahaman alur proses diatas, berikut OP Code Register CPU internal :

0001 = muatan AC dari memori

0010 = simpan AC ke memori

0101 = tambahkan AC dari memori

7. Keunggulan antara AMD dan Intel :

1). Keunggulan AMD (Advanced Micro Devices)

  •   Lebih murah
  •   Dapat mendeteksi malware
  •   Multicore lebih banyak dibanding intel
  •  Support socket lebih friendly, maksudnya menggunakan motherboard lama 2 tahun   sebelum prosesor digunakan masih didukung. Misalnya punya Mobo AM4 2015 masih bisa dipakai untuk prosesor keluaran 2017/2018, walaupun tergantung chipsetnya juga.
  •   Bagus untuk game, Ketika digunakan untuk main game maka AMD menampilkan gambar lebih jernih dan tidak cepat dan lain lain.


2). Keunggulan Intel

  •   Tidak mudah panas
  •   Tidak mengeluarkan suara berlebih
  •   Unggul merek (Brand)
  •   Lebih cepat dalam menjalankan berbagai program
  •   Dalam manajemen suhunya, intel lebih unggul
  •   Dalam multimedia, intel dapat menampilkan gambar lebih tajam dan dapat di overclok     dengan baik.


8. Fase-fase sebuah Proses Compilasi

a). Lexical Analyzer 

    Lexical Analyzer atau Penganalisa leksikal berfungsi Membaca program sumber, karakter demi karakter. Sederetan (satu atau lebih) karakter dikelompokkan menjadi satu kesatuan mengacu kepada pola kesatuan kelompok karakter (token) yang ditentukan dalam bahasa sumber. Kelompok karakter yang membentuk sebuah token dinamakan lexeme untuk token tersebut. Setiap token yang dihasilkan disimpan di dalam tabel simbol. Sederetan karakter yang tidak mengikuti pola token akan dilaporkan sebagai token tak dikenal (unidentified token).

Contoh : Misalnya pola token untuk identifier I adalah : I = huruf(huruf½angka)*. Lexeme ab2c dikenali sebagai token sementara lexeme 2abc atau abC tidak dikenal.

b). Syntax Analyzer 

    Syntax Analyzer atau penganalisa sintaks berfungsi memeriksa kesesuaian pola deretan token dengan aturan sintaks yang ditentukan dalam bahasa sumber. Sederetan token yang tidak mengikuti aturan sintaks akan dilaporkan sebagai kesalahan sintaks (sintax error). Secara logika deretan token yang bersesuaian dengan sintaks tertentu akan dinyatakan sebagai pohon parsing (parse tree).

Contoh : Misalnya sintaks untuk ekspresi if-then E adalah : E ® if  L  then, L ® IOA, I = huruf(huruf½angka)*,  O ® <½=½>½<=½>=,  A ® 0½1½…½9.  Ekspresi if a2 < 9 then adalah ekspresi sesuai sintaks; sementara ekspresi if a2 < 9 do atau if then a2B < 9 tidak sesuai. Perhatikan bahwa contoh ekspresi terakhir juga mengandung token yang tidak dikenal.

c). Semantic Analyzer

    Semantic Analyzer atau Penganalisa Semantik berfungsi memeriksa token dan ekspresi dari batasan-batasan yang ditetapkan. Batasan-batasan tersebut misalnya :

  • Panjang maksimum token identifier adalah 8 karakter,
  • Panjang maksimum ekspresi tunggal adalah 80 karakter,
  • Nilai bilangan bulat adalah -32768 s/d 32767,
  •  Operasi aritmatika harus melibatkan operan-operan yang bertipe sama.

Analisis Semantik menghasilkan suatu kode objek yang dapat dieksekusi dalam translasi sederhana, tetapi biasanya bentuk dari kode objek yang dapat dieksekusi ini merupakan bentuk internal dari final program eksekusi, yang kemudian dimanipulasi oleh tahap optimisasi dari translator sebelum akhirnya kode eksekusi benar-benar dihasilkan.

d). Intermediate Code Generator 

    Intermediate Code Generator ialah  kode antara (intermediate code) berdasar-kan pohon parsing. Pohon parse selanjutnya diterjemahkan oleh suatu penerjemah yang dinamakan penerjemah berdasarkan sintak (syntax-directed translator). Hasil penerjemahan ini biasanya merupakan perintah tiga alamat (three-address code) yang merupakan representasi program untuk suatu mesin abstrak. Perintah tiga alamat bisa berbentuk quadruples (op, arg1, arg2, result), tripels (op, arg1, arg2). Ekspresi dengan satu argumen dinyatakan dengan menetapkan arg2 dengan – (strip, dash)

e). Code Optimizer 

    Code Optimizer atau Pengoptimal kode berfungsi  melakukan optimasi (penghematan space dan waktu komputasi), jika mungkin, terhadap intermediate code. Dilakukan juga pendeteksian suatu ekspresi yang sering terjadi, sehingga pengulangan tidak perlu terjadi dan lain sebagainya.

9. Gunakan register alamat : A,B,C,D,E. Register yang menyimpan hasil : T,Y

1) (A × D)/(B – C)+E
·         Y = (A × D) /(B – C)+E
MPY Y, A, D Y := A × D (1)
SUB T, B, C T := B × C (2)
DIV Y, Y, T Y := Y/T (3)
ADD Y, Y, E Y := Y + E (4)
Memerlukan 4 kali operasi
 
2) A / B – D/ E + C
·         Y = A / B – D / E + C
DIV Y, A, B Y := A / B (1)
DIV Y, D, E Y := D / E (2)
SUB T, Y, Y T := Y – Y (3)
ADD Y, T, C Y := T + C (4)
Memerlukan 4 kali operasi
 
3) A / (B – D)+C
·         Y = A / (B – D) + C
SUB T, B, D T := B – D (1)
DIV Y, A, T Y := A / T (2)
ADD Y, Y, C Y := Y + C (3)
Memerlukan 3 kali operasi
 
4) A / (B – D + C)
·         Y = A / (B – D + C)
SUB T, B, D T := B – D (1)
ADD Y, T, C Y := T + C (2)
DIV Y, A, Y Y := A / Y (3)
Memerlukan 3 kali operasi
 
5) A + B / (C + D) × E
·         Y = A + B / (C + D) × E
ADD Y, C, D Y := C + D (1)
DIV Y, B, Y Y := B / Y (2)
ADD Y, A, Y Y := A + Y (3)
MPY Y, Y, E Y := Y × E (4)
Memerlukan 4 kali operasi

10. Hasil terjemahan bilangan Desimal  ke bilangan Biner dengan panjang 8 bit atau sebaliknya


Jawab

8710 =27+ 26+24+22+21+20

27

26

25

24

23

22

21

20

0

1

0

1

0

1

1

1

à Jadi, 8710 = 010101112

2). 9810 = ...

Jawab

9810 = 26+25+21

27

26

25

24

23

22

21

20

0

1

1

0

0

0

1

0

àJadi, 9810 = 011000102

3). 10010 = ...

Jawab

10010 = 26+25+22

27

26

25

24

23

22

21

20

0

1

1

0

0

1

0

0

àJadi, 10010 = 011001002

4). 0000 11002 = ...

Jawab

0000 11002 =  0x27 + 0x26 + 0x25 + 0x24 + 1x23 + 1x22 + 0x21 + 0x20

                   =  0 + 64 + 0 + 16 + 0 +4 + 0 + 0

                   = 0 + 0 + 0 + 0 + 8 + 4 + 0 + 0

                   =  1210

1 komentar:

  1. Telah Diperiksa!

    Catatan: Sudah Sangat bagus pengaturan Sitemap kamu. Tapi Coba buat judul blog yang terpisah berdasarkan Bidang Studi ya. Jangan dalam satu judul blog TM berisi banyak Postingan Judul Matakuliah. Ikuti saja seperti yang pernah bapak ajarkan. Contoh yang benar seperti punya teman kamu ini: https://www.blogger.com/profile/12374551436188150058

    Kedepannya mohon diperbaiki

    BalasHapus