Selasa, 24 November 2020

Tugas Resum Perkuliahan 8

 ORGANISASI &ARSITEKTUR KOMPUTER

PERTEMUAN KE-8


Instruksi Komputer
TIK:

Set instruksi ?

- Kumpulan instruksi lengkap yang dimengerti oleh CPU

- Kode mesin

- Biner

- Kode assembly

Elemen Instruksi

- Operation code (Op code)

- Kerjakan

- Source Operand reference

- Dengan data ini

- Result Operand reference

- Simpan hasilnya kesini

- Next Instruction Reference

- Setelah selesai, kerjakan ini ...

Penyajian Instruksi

- Dlm kode mesin setiap instruksi memiliki pola-bit tertentu

- Untuk konsumsi programmers disediakan penyajian simbolik

- Contoh: ADD, SUB, LOAD

- Operand juga disajikan secara simbolik

- Contoh: ADD A,B

Jenis Instruksi

- Data processing

- Data storage (main memory)

- Data movement (I/O)

- Program flow control

Jumlah addres (a)

- 3 addres

- Operand 1, Operand 2, Result

- Contoh: ADD A,B,C

- a = b + c;

- Jarang digunakan

- Perlu word yang panjang

Jumlah addres (b)

- 2 addres

- Salah satu sebagai operand dan result

- Contoh: ADD A,B

- a = a + b

- Instruksi lebih pendek

- Diperlukan kerja ekstra

- Temporary storage untuk menyimpan beberapa hasil operasi

Jumlah addres (c)

- 1 addres

- Addres kedua Implicit

- Biasanya register (accumulator)

Jumlah addres (d)

- 0 (zero) addres

- semua addres implicit

- menggunakan stack

 Contoh:

- push a

- push b

- add

- pop c

 Berarti:

- c = a + b

Addres banyak ? Sedikit ?

- Addres banyak

- Instruksi semakin kompleks

- perlu register banyak

- Program lebih pendek

- Lebih cepat ?

- Addres sedikit

- Instruksi lebih sederhana

- Eksekusi lebih cepat

Pertimbangan Perancangan (1)

- Operation

- Berapa banyak operand?

- Apa saja operasi yang dikerjakan?

- Seberapa komplekx?

- Jenis data

- Format instruksi

- Panjang opcode

- Jumlah addres

Pertimbangan Perancangan (2)

- Register

- Jumlah register yang tersedia dlm CPU

- Operasi apa yg dpt dikerjakan oleh masing-masing registers?

- Addressing modes (…)

- RISC v CISC

Jenis Operand

- Addres

- Number

- Integer/floating point

- Character

- ASCII etc.

- Logical Data

- Bits or flags

- (Apa ada bedanya antara number dg character?)

Tipe Data pada Pentium

- 8 bit Byte

- 16 bit word

- 32 bit double word

- 64 bit quad word

- Addressing menggunakan 8 bit unit

- 32 bit double word dibaca pada addres yg habis dibagi dg 4

Tipe Data Specifik

- General – sembarang isi biner

- Integer - single binary value

- Ordinal - unsigned integer

- Unpacked BCD - One digit per byte

- Packed BCD - 2 BCD digits per byte

- Near Pointer - 32 bit offset within segment

- Bit field

- Byte String

- Floating Point

Jenis Operasi

- Data Transfer

- Arithmetic

- Logical

- Conversion

- I/O

- System Control

- Transfer of Control

Data Transfer

- menentukan

- Source

- Destination

- Jumlah data

- Beda instruksi untuk setiap data movement yang beda

- pada IBM 370

- Atau satu instruction dengan addres yg beda

- pada VAX

Arithmetic

- Add, Subtract, Multiply, Divide

- Signed Integer

- Floating point ?

- Termasuk operasi:

- Increment (a++)

- Decrement (a--)

- Negate (-a)

Logical

- Bitwise operations

- AND, OR, NOT

Conversion

- Contoh: Biner ke Decimal

Input/Output

- Tersedia instruksi khusus

- Atau digunakan instruksi data movement (memory mapped)

- Atau dikerjakan oleh controller (DMA)

Systems Control

- Privileged instructions

- CPU harus berada pada state tertentu

- Ring 0 pada 80386+

- Kernel mode

- Digunakan oleh operating systems

Systems Control

- Privileged instructions

- CPU harus berada pada state tertentu

- Ring 0 pada 80386+

- Kernel mode

- Digunakan oleh operating systems

Contoh Byte Order

Address    Value (1)    Value(2)

184            12                78

185            34                56

186            56                34

186            78                12

top down atau bottom up?

Penamaan Byte Order

- Problem ordering dinamakan Endian

- LSB pada posisi paling kiri (pada addres terkecil)

- Dinamakan big-endian

- LSB pada posisi paling kanan (pada addres terbesar)

- Dinamakan little-endian

Standard…?

- Pentium (80x86), VAX adalah little-endian

- IBM 370, Motorola 680x0 (Mac), dan RISC yang lain, adalah

  big-endian

- Internet menggunakan big-endian

- Membuat program untuk Internet pada PC lebih susah.

- WinSock menyediakan htoi (Host to Internet) dan itoh (Internet to

   Host) untuk keperluan konversi



NAMA  : M. ANANG MA'RUF
KELAS : TEKNIK INFORMATIKA (B)
NIM      : 23420003

Orkom Perkuliahan 8

Selasa, 17 November 2020

UTS Arsitektur dan Organisasi Komputer

 NAMA : M. ANANG MA'RUF

KELAS : TEKNIK INFORMATIKA (20B)

NIM      : 23420003


ARSITEKTUR & ORGANISASI KOMPUTER


SOAL

1. Sebutkan dan jelaskan perangkat hardware dan software yang kalian ketahui di PC ( Minimal 3 untuk masing-masing perangkat.

2. Konversikan bilangan gabungan dari tgl lahir kalian masing-masing (contoh 15 januari 1990, menjadi 15011990 menjadi biner.


JAWAB

1. Pengertian Hardware dan Software Komputer

Berikut ini adalah pengertian dari Hardware dan Software, yakni :

a. Pengertian Hardware

Hardware (perangkat keras) merupakan semua bagian dari fisik komputer, yang membedakan hardware yakni adalah data yang berada di dalamnya atau data yang beroperasi di dalamnya, berbeda dengan software yang mana ini menyediakan instruksi untuk perangkat keras dalam menyelesaikan tugasnya.

b. Pengertian Software

Software (perangkat lunak) yakni merupakan perangkat yang berupa aplikasi (program) yang diciptakan dan dirancang oleh programer sehingga dapat beroperasi atau menjalankan suatu perintah. Software ini pula dapat dikatakan dengan penggerak dan pengontrol perangkat keras (Hardware) untuk kemudian di fungsikan sebagai mana fungsinya.

Fungsi Hardware dan Software Komputer

Terlepas dari pengertian dan perbedaan antara kedua komponen yang sudah di jelaskan di atas, kali ini mari kita simak fungsi dari masing – masingnya, yakni :

a. Fungsi Hardware

Hardware (Perangkat Keras) berfungsi memudahkan pengguna komputer dalam melakukan kegitan atau bekerja yang berkaitan dengan pengunaan komputer atau dengan adanya hardware yang lengkap maka sistem komputer bisa berjalan dengan baik. Untuk fungsinya yakni sesuai dengan jenis hardware yang ada.
  • Menjadi media pemberi masukan data (eksekutor).
  • Perangkat Keras ( Hardware) berfungsi sebagai pengolah data.
  • Hardware juga memiliki fungsi sebagai penampil inputan dari sebuah proses.

b. Fungsi Software

  • Fungsi Software yakni sebagai sistem operasi atau sistem pendukung.
  • Fungsi Software yakni untuk mengatur atau mengontrol hardware.
  • Software berfungsi menjadi penerjemah setiap instruksi ke dalam bahasa mesin agar dapat di terima oleh hardware.
  • Mengidentifikasi program.


Contoh Hardware dan Software

Berikut ini adalah contoh dari Hardware dan Software, yakni ;

a. Contoh Hardware

  • CPU –  Menjadi unit pengolah data.
  • RAM – Menjadi tempat penyimpanan data sementara.
  • Hard drive – Menjadi media penyimpanan data semi permanen.
  • Mouse + keyboard – Perangkat masukan, media yang dipakai untuk memasukkan data untuk kemudian diproses oleh CPU.
  • Monitor – Menjadi alat penampil output (keluaran) yang di hasilkan oleh CPU.
  • Speaker – Menjadi alat penampil output (keluaran) yang berupa suara yang di hasilkan oleh CPU.

b. Contoh Software

  • (application software) Perangkat lunak aplikasi seperti pengolah kata, lembar tabel hitung dan lain-lainnya.
  • (operating system) Sistem operasi seperti windows dan Linux.
  • (device driver) Pengendali perangkat keras yakni penghubung antara perangkat perangkat keras pembantu, dan komputer adalah software yang banyak dipakai oleh penggunaan barcode scanner pada aplikasi database yang lainnya.
  • (firmware) Perangkat lunak menetap seperti yang terdapat dalam jam tangan digital serta pengendali jarak jauh.
  • software development tool) Perkakas pengembangan perangkat lunak seperti Kompilator untuk bahasa pemrograman tingkat tinggi seperti Pascal serta bahasa pemrograman tingkat rendah yaitu bahasa rakitan.
  • (free ‘libre’ software) Perangkat lunak bebas dan Perangkat lunak sumber terbuka.
  • (shareware / trialware) Perangkat lunak uji coba
  • (malware) Perangkat lunak perusak
  • (freeware) Perangkat lunak gratis.


2. Tanggal lahir : 10 juni 2000 menjadi (10062000)
Tgl            Bilangan Biner
10     :        1010
06     :        0110
2000 :        11111010000 2
Hasil konversi bilangan biner :
1010011011111010000

Selasa, 10 November 2020

Tugas Resum Perkuliahan 7

 ORGANISASI & ARSITEKTUR KOMPUTER

PERTEMUAN KE-7


A. Pengertian dan Struktur Arithmatic and Logic Unit (ALU)

Arithmatic and Logic Unit (ALU) adalah salah satu bagian atau komponen dalam system didalamsistem computer yang berfungsi melakukan operasi atau perhitungan aritmatika dan logika, seperti : penjumlahan,pengurangan dan beberapa logika lain.

B. Struktur Arithmatic and Logic Unit (ALU)

ALU merupakan suatu kesatuan alat yang terdiri dari berbagai komponen perangkat elektronika termasuk di dalamnya sekelompok transistor, yang dikenal dengan nama logic gate, dimana logic gate ini berfungsi untuk melaksanakan perintah dasar matematika dan operasi logika. Kumpulan susunan dari logic gate inilah yang dapat melakukan perintah perhitungan matematika yang lebih komplit seperti perintah “add” untuk menambahkan bilangan, atau “devide” atau pembagian dari suatu bilangan.

Operasi logika (logical operation) 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 Kerja ALU

Pada gambar diatas adalah cara kerja ALU yang pertama — tama yaitu ALU akan bekerja setelah mendapat perintah dari Control Unit yang terletak pada processor. Control Unit akan memberi perintah sesuai dengan komando yang tertulis(terdapat) pada register. Jika isi register memberi perintah untuk melakukan proses penjumlahan, maka PC akan menyuruh ALU untuk melakukan proses penjumlahan. Selain perintah, register pun berisikan operand-operand. Setelah proses ALU selesai, hasil yang terbentuk adalah sebuah register yang berisi hasil atau suatu perintah lainnya. Selain register, ALU pun mengeluarkan suatu flag yang berfungsi untuk memberi tahu kepada kita tentang kondisi suatu processor seperti apakah processor mengalami overflow atau tidak.

C. Cara kerja CPU

Pada gambar diatas adalah cara kerja CPU yang pertama — tama yaitu saat sebuah program akan dieksekusi, maka isi program tersebut yang berada di dalam harddisk diambil dan di masukkan ke RAM. Control Unit membedakan instruksi dan data, instruksi ditempatkan ke Program-Storage sedangkan data ditempatkan di Working-Storage. Selanjutnya instruksi dan data tersebut di ambil oleh Control Unit di simpan di Register. Bila instruksi merupakan perhitungan logika atau aritmatika, maka ia dibawa ke ALU untuk diproses. Hasilnya akan ditampung di Accumulator. Control Unit akan mengambilnya dan membawanya kembali ke RAM yang kemudian di tampilkan hasilnya ke alat output.

D. Fungsi Arithmatic and Logic Unit (ALU)

Tugas dari ALU adalah melakukan keputusan dari operasi logika sesuai dengan instruksi program. ALU melakukan operasi aritmatika yang lainnya seperti pengurangan, dan pembagian dilakukan dengan dasar penjumlahan. Sehingga sirkuit elektronik di ALU yang digunakan untuk melaksanakan operasi aritmatika ini disebut adder.

E. Rangkaian Utama Untuk Melakukan Perhitungan ALU

ADDER Adder merupakan rangkain ALU (Arithmetic and Logic Unit) yang digunakan untuk menjumlahkan bilangan. Karena adder digunakan untuk memproses operasi aritmatika, maka adder juga sering disebut rangkaian kombinasional aritmatika. Ada 3 jenis Adder, yaitu:
Ø Rangkaian adder yang hanya menjumlahkan dua bit disebut Half Adder.
Ø Rangkaian adder yang hanya menjumlahkan tiga bit disebut Full Adder.
Ø Rangkaian adder yang menjumlahkan banyak bit disebut Paralel Adder

HALF ADDER
Rangkain half adder merupakan dasar bilangan biner yang masing-masing hanya terdiri dari satu bit, oleh karena itu dinamakan penjumlah tak lengkap.
1. Jika A=0 dan B=0 dijumlahkan, hasilnya S (Sum) = 0.
2. Jika A=1 dan B=0 dijumlahkan, hasilnya S (Sum) = 1.
3. Jika A=1 dan B=1 dijumlahkan, hasilnya S (Sum) = 0. Dengan nilai pindahan Cy (Carry Out) = 1 

Dengan demikian, half adder memiliki dua masukan (A dan B), dan dua keluaran (S dan Cy).
Dari tabel diatas, terlihat bahwa nilai logika dari Sum sama dengan nilai logika dari gerbang XOR, sedangkan nilai logika Cy sama dengan gerbang logika AND. Dari tabel diatas, dapat dibuat rangkaian half adder.

FULL ADDER
Full adder adalah rangkaian yang bekerja melakukan perhitungan penjumlahan sepenuhnya dari dua buah bilangan binary, yang masing-masing terdiri dari satu bit. Rangkaian ini memiliki tiga input dan dua buah output, salah satu input merupakan nilai dari pindahan penjumlahan, kemudian sama seperti pada half adder salah satu outputnya dipakai sebagai tempat nilai pindahan dan yang lain sebagai hasil dari penjumlahan. 

 

PARALEL ADDER
Paralel Adder adalah rangkaian Full Adder yang disusun secara paralel dan berfungsi untuk menjumlahkan bilangan biner berapa pun bitnya, tergantung jumlah Full Adder yang diparalelkan. Gambar dibawah ini menunjukan Paralel Adder yang terdiri dari 4 buah Full Adder yang disusun paralel sehingga membentuk sebuah penjumlahan 4 bit.

 F. Representasi Integer, Representasi Nilai Tanda, Representasi Komplemen Satu,Representasi Komplemen Dua

REPRESENTASI INTEGER
Dalam sistem bilangan biner, semua bilangan dapat direpresentasikan dengan hanya menggunakan digit-digit nol dan satu, 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 dapat merepresentasikan bilangan.
Bila kita hanya memakai integer non-negatif, maka representasinya akan lebIh mudah.
Sebuah word 8-bit dapat digunakan untuk merepresentasikan bilangan 0 hingga 255. Misalnya :
00000000 = 0
00000001 = 1
00001111 = 15
00111111 = 63
11111111 = 255
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 = 00001010
– 010 = 10001010 (sign-magnitude)

REPRESENTASI KOMPLEMEN SATU
Komplemen satu merupakan suatu sistem penomoran yang diterapkan dalam beberapa jenis komputer untuk merepresentasikan nilai-nilai negatif.
Contoh :

  • 000…00001 = +1
  • 000…00000 = +0
  • 111…11111 = -0
  • 111…11110 = -1

Dapat kita lihat dari aturan diatas, nilai +0 akan berpasangan dengan -0, +1 dengan -1, dan seterusnya. Ini menunjukkan bahwa negasi dari 0 adalah -0, negasi dari 1 adalah -1, dan seterusnya.

REPRESENTASI KOMPLEMEN DUA
Komplemen dua mirip dengan komplemen satu, hanya saja dalam proses negasinya semua bit juga akan dibalik, sehingga tidak ada lagi rasa “bingung” merepresentasikan nilai +0 dan -0, karena hanya ada satu nilai 0 (nol), seperti berikut :

  • 000…00001 = +1
  • 000…00000 = 0
  • 111…11111 = -1
  • 111…11110 = -2

Dari aturan di atas dapat kita lihat bahwa nilai 0 akan berpasangan dengan nilai -1, nilai +1 akan berpasangan dengan -2, dan seterusnya. Hal ini menunjukkan bahwa negasi dari 0 adalah -1, negasi dari +1 adalah -2, dan begitu seterusnya.

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)
-18 = 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)

G. Integer Aritmatika

NEGASI
Untuk membuat negasi gunakan komplement dua, yaitu
· Untuk bilangan positif, komplemen dua adalah sama dengan sistem yang menunjukkan tanda dan besarnya bilangan, yaitu MSB yang digunakan sebagai penunjuk atau tanda bilangan, dan bit-bit sisanya menunjukkan besarnya.
· Untuk bilangan negatif, komplemen dua dapat diperoleh dengan menghitung terlebih dahulu komplemen satu dari bilangan biner semula (yang bertanda positif), kemudian menambahkan 1 ke LSB-nya.

ATURAN UNTUK MENDETEKSI OVERFLOW
Aturan overflow
Bila dua buah bilangan di tambahkan, dan keduanya positif atau keduanya negatif maka over flow akan terjadi jika dan hanya jika hasilnya memiliki tanda yang berlawanan.

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

H. Konversi Bilangan

BILANGAN

  • Bilangan biner (Bilangan berbasis dua, bilangannya: 0,1)
  • Bilangan octal (Bilangan berbasis delapan bilangannya: 0,1,2,3,4,5,6,7)

· Bilangan desimal (Bilangan berbasis sepuluh, bilangannya: 0,1,2,3,4,5,6,7,8,9)
· Bilangan hexadesimal (Bilangan berbasis enam belas, bilangannya: 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F)
KONVERSI BILANGAN BINER,OCTAL ATAU HEXADESIMAL MENJADI BILANGAN DESIMAL

I. Floating-Point Representaion

Representasi Integer oleh Biner
Dalam sistem bilangan biner ada 4 macam sistem untuk merepresentasikan integer
- representasi unsigned integer
- representasi nilai tanda (sign magnitude)
- representasi bias
- representasi komplemen dua (2’s complement)

J. Unsigned Integer

Untuk keperluan penyimpanan dan pengolahan komputer diperlukan bilangan biner yang terdiri atas 0 dan 1
1 byte (8 bit binary digit) dapat digunakan untuk menyatakan bilangan desimal dari 0–255
Kelemahan Unsigned Integer

  • Hanya dapat menyatakan bilangan positif
  • Sistem ini tidak bisa digunakan untuk menyatakan bilangan integer negatif

1. Representasi Nilai Tanda (sign magnitude)
Karena kelemahan unsigned integer, Dikembangkan beberapa
konvensi untuk menyatakan bilangan integer negatif
2. Konvensi
Perlakuan bit yang paling kiri (MSB) di dalam byte sebagai tanda
Bila MSB = 0 maka bilangan tersebut positif
Jika MSB = 1 maka bilangan tersebut negatif
3. Kelemahan sign magnitude
Adanya representasi ganda pada bilangan 0
4. Representasi BIAS
Digunakan untuk menyatakan exponen (bilangan pemangkat) pada representasi floating point.
Dapat menyatakan bilangan bertanda, yaitu dengan mengurutkan
dari bilangan negatif terkecil dapat dijangkau sampai bilangan
positif paling besar yang bisa dijangkau.
Mengatasi permasalahan pada sign magnitude yaitu +0 dan -0.
5. Representasi Komplemen 2
Merupakan perbaikan dari representasi nilai bertanda (sign magnitude) yang mempunyai kekurangan pada operasi penjumlahan dan pengurangan serta representasi nilai 0.
Bilangan Negatif Pada 2’s Complement
1. Sistem bilangan dalam 2’s complement menggunakan bit paling kiri (MSB) sebagai bit tanda dan sisanya sebagai bit nilai seperti pada sign magnitude
2. Bilangan negatif dalam 2’s complement dibentuk dari:
· komplemen satu dari bilangan biner semula (nilai positif)
· menambahkan 1 pada LSB

K. Floating-Point Aritmatika

1) Aritmatika floating point penjumlahan/pengurangan
Langkah­ langkah yang dilakukan untuk menambah/mengurangkan dua bilangan floating point :
a. Bandingkan kedua bilangan, dan ubah ke bentuk yang sesuai pada bilangan dengan nilai exponensial lebih kecil
b. Lakukan operasi penjumlahan / pengurangan
c. Lakukan normalisasi dengan ’menggeser’ nilai mantissa dan mengatur nilai exponensialnya

2) Perkalian
Algoritma umum untuk perkalian dari bilangan floating point terdiri dari tiga langkah:
a. Hitung hasil exponensial dengan menjumlahkan nilai exponent dari kedua bilangan
b. Kalikan kedua bilangan mantissa
c. Normalisasi hasil akhir

3) Pembagi
logaritma umum untuk pembagian dari bilangan floating point terdiri dari tiga langkah :
a. Hitung hasil exponensial dengan mengurangkan nilai exponent dari kedua bilangan
b. Bagi kedua bilangan mantissa
c. Normalisasi hasil akhir



NAMA : M. ANANG MA'RUF

KELAS: T. INFORMATIKA (B)

NIM    : 23420003


Orkom Perkuliahan 7

Selasa, 03 November 2020

Tugas Orkom Rangkum perkuliahan 6

 ORGANISASI &ARSITEKTUR KOMPUTER

PERTEMUAN KE-6

Dukungan Sistem Operasi

TIK:

Objectives and Functions

Convenience

Making the computer easier to use

Efficiency

Allowing better use of computer resources

Operating System Services

Program creation

Program execution

Access to I/O devices

Controlled access to files

System access

Error detection and response

Accounting

Types of Operating System

Interactive

Batch

Single program (Uni-programming)

Multi-programming (Multi-tasking)

Early Systems

Late 1940s to mid 1950s

No Operating System

Programs interact directly with hardware

Two main problems:

Scheduling

Setup time

Simple Batch Systems

Resident Monitor program

Users submit jobs to operator

Operator batches jobs

Monitor controls sequence of events to process batch

When one job is finished, control returns to Monitor which
reads next job

Monitor handles scheduling

Desirable Hardware Features

Memory protection

To protect the Monitor

Timer

To prevent a job monopolizing the system

Privileged instructions

Only executed by Monitor

e.g. I/O

Interrupts

Allows for relinquishing and regaining control

Multi-programmed Batch Systems

I/O devices very slow

When one program is waiting for I/O, another can use the CPU

Time Sharing Systems

Allow users to interact directly with the computer

i.e. Interactive

Multi-programming allows a number of users to interact with
the computer

Scheduling

Key to multi-programming

Long term

Medium term

Short term

I/O

Long Term Scheduling

Determines which programs are submitted for processing

i.e. controls the degree of multi-programming

Once submitted, a job becomes a process for the short term
scheduler

(or it becomes a swapped out job for the medium term
scheduler)

Medium Term Scheduling

Part of the swapping function (later…)

Usually based on the need to manage multi-programming

If no virtual memory, memory management is also an issue

Short Term Scheduler

Dispatcher

Fine grained decisions of which job to execute next

i.e. which job actually gets to use the processor in the next time
slot

Process Control Block

Identifier

State

Priority

Program counter

Memory pointers

Context data

I/O status

Accounting information

Memory Management

Uni-program

Memory split into two

One for Operating System (monitor)

One for currently executing program

Multi-program

“User” part is sub-divided and shared among active processes

Swapping

Problem: I/O is so slow compared with CPU that even in
multi-programming system, CPU can be idle most of the time

Solutions:

Increase main memory

Expensive

Leads to larger programs

Swapping

What is Swapping?

Long term queue of processes stored on disk

Processes “swapped” in as space becomes available

As a process completes it is moved out of main memory

If none of the processes in memory are ready (i.e. all I/O
blocked)

Swap out a blocked process to intermediate queue

Swap in a ready process or a new process

But swapping is an I/O process...

Partitioning

Splitting memory into sections to allocate to processes
(including Operating System)

Fixed-sized partitions

May not be equal size

Process is fitted into smallest hole that will take it (best fit)

Some wasted memory

Leads to variable sized partitions

Variable Sized Partitions (1)

Allocate exactly the required memory to a process

This leads to a hole at the end of memory, too small to use

Only one small hole - less waste

When all processes are blocked, swap out a process and bring
in another

New process may be smaller than swapped out process

Another hole

Variable Sized Partitions (2)

Eventually have lots of holes (fragmentation)

Solutions:

Coalesce - Join adjacent holes into one large hole

Compaction - From time to time go through memory and move all
hole into one free block (c.f. disk de-fragmentation)

Relocation

No guarantee that process will load into the same place in
memory

Instructions contain addresses

Locations of data

Addresses for instructions (branching)

Logical address - relative to beginning of program

Physical address - actual location in memory (this time)

Automatic conversion using base address

Paging

Split memory into equal sized, small chunks -page frames

Split programs (processes) into equal sized small chunks -
pages

Allocate the required number page frames to a process

Operating System maintains list of free frames

A process does not require contiguous page frames

Use page table to keep track

Virtual Memory

Demand paging

Do not require all pages of a process in memory

Bring in pages as required

Page fault

Required page is not in memory

Operating System must swap in required page

May need to swap out a page to make space

Select page to throw out based on recent history

Thrashing

Too many processes in too little memory

Operating System spends all its time swapping

Little or no real work is done

Disk light is on all the time

Solutions

Good page replacement algorithms

Reduce number of processes running

Fit more memory

Bonus

We do not need all of a process in memory for it to run

We can swap in pages as required

So - we can now run processes that are bigger than total
memory available!

Main memory is called real memory

User/programmer sees much bigger memory - virtual memory

Segmentation

Paging is not (usually) visible to the programmer

Segmentation is visible to the programmer

Usually different segments allocated to program and data

May be a number of program and data segments

Advantages of Segmentation

Simplifies handling of growing data structures

Allows programs to be altered and recompiled independently,
without re-linking and re-loading

Lends itself to sharing among processes

Lends itself to protection

Some systems combine segmentation with paging

Required Reading

Stallings chapter 7

Stallings, W. Operating Systems, Internals and Design
Principles, Prentice Hall 1998

Loads of Web sites on Operating Systems



NAMA : M. ANANG MA'RUF

KELAS: TEKNIK INFORMATIKA (B)

NIM     : 23420003

Orkom Perkuliahan 6

JAWABAN UAS ORGANISASI DAN ARSITEKTUR KOMPUTER

 UJIAN AKHIR SEMESTER GANJIL TA. 2020/2021 FAKULTAS ILMU KOMPUTER UNIVERSITAS NAHDLATUL ULAMA SIDOARJO JAWABAN UAS ORGANISASI DAN ARSITEKTUR...