SOAL UTS TRUKTUR
DATA
1.Jelaskan
proses konversi bilangan 8142(10) kedalam bentuk bilangan Biner, Heksadesimal,
dan Oktal?
2.Buatlah penjelasan untuk tipe
data signed integer (bilangan bertanda) untuk prosesor yang memiliki jumlah 7
bit?
3.Terdapat empat operasi logika
yang dapat digunakan untuk memodifikasi pola bit yaitu complementing, setting,
unsetting, dan flipping. Buat penjelasan proses untuk mendapatkan hasil dari
angka desimal berikut ini:
217(10)
XNOR 230(10)
4.Algoritma adalah serangkaian langkah-langkah
yang jelas untuk mendapatkan hasil dalam waktu yang terbatas. Jelaskan
langkah-langkah untuk mengurutkan deretean angka dengan metode insertion sort?
Jawaban:
1. 8142
0--------2 ..... (sisa------bagi
2)
4071
1--------2
2035
1 ------ 2
1017
1 ------ 2
508
0 ------ 2
254
0 ------- 2
127
1 ------ 2
63
1 ------ 2
31
1 ------ 2
15
1 ------ 2
7
1 --- 2
3
1 -----2
1
Biner: 0001 1111 1100 1110 (2)
Yang dicatat bagian sisa, kalau
hexades. dibagi 16. Kalau oktal dibagi 8.
Hexadesimal:
8142
------ 16 sisa 14 = E
508
------ 16 sisa 12 = C
31
----- 16 sisa 15 = F
1
hexadesimal: 1FCE (16)
oktal:
8142
------- 8 sisa 6
1017
------- 8 sisa 1
127
----- 8 sisa 7
15
---- 8 sisa 7
1
oktaldesimal = 17716 (8)
2. TIpe
Data Sign Integer (Bilangan Bertanda ) untuk prosessor 7 bit
Representasi data
merupakan cara untuk meletakkan sebuah nilai dalam memory komputer. Representasi
data ini terdiri dari beberapa bilangan yang biasa disebut tipe data dalam pemograman.
Tipe data yang biasa
kita kenal dan kita gunakan dalam memprogram sebuah aplikasi adalah tipe data
Integer, Float, Char, Double. Untuk tipe data integer dan char, terdiri
dari dua yaitu
Unsigned dan Signed.
Tipe data Char atau
Integer yang diikuti dengan kata Unsigned akan menghasilkan
nilai positif semua
karena tipe data ini tidak mengenal tanda didepannya (-).
Sedangkan tipe data
Chat atau Integer yang diikuti oleh signed, (biasanya tidak dituliskan) akan
terdapat nilai negative nya karena bilangan ini mengenal tanda yang ada didepan
nilai (-).
Tipe data Char dan
integer menghasilkan bilangan bulat (tidak berkoma). Sedangkan tipe data Float
dan Double menghasilkan bilangan berkoma. Untuk merepresentasikan bilangan
dapat dilihat pada tabel berikut ini:
Signed
|
4 Bit
|
Unsigned
|
0
|
0000
|
0
|
1
|
0001
|
1
|
2
|
0010
|
2
|
3
|
0011
|
3
|
4
|
0100
|
4
|
5
|
0101
|
5
|
6
|
0110
|
6
|
7
|
0111
|
7
|
-8
|
1000
|
8
|
-7
|
1001
|
9
|
-6
|
1010
|
10
|
-5
|
1011
|
11
|
-4
|
1100
|
12
|
-3
|
1101
|
13
|
-2
|
1110
|
14
|
-1
|
1111
|
15
|
Tabel tersebut
merupakan contoh representasi tipe data Integer yang terdiri dari 4 bit. Pada
sisi Signed, terdapat bilangan negative dimana MSB dari bilangan biner tersebut
bernilai 1. Dan begitu juga jika kita menggunakan tipe data integer yang
memiliki data sebesar 32 bit.
Untuk mengetahui
panjang data tersebut kita dapat merubah nilai seperti pada tabel contoh
bilangan yang 4 bit,
untuk 32 bit banyaknya bilangan biner adalah 32. Jadi dengan ini kita dapat
mengetahui batas nilai maximal dan minimal dari sebuah tipedata.
Berikut ini adalah
contoh beberapa representasi bilangan biner untuk bilangan heksadesimal
+5 dan -5 serta +7 dan
-7.
ASCII (American
Standard Code for Information Interchange)
Data ASCII mewakili
karakter alfanumerik dalam memori sistem komputer. Format Data yang digunakan
adalah 7 bit,
dimana bit yang ke 8
digunakan untuk memuat parity. dalam komputer pribadi, kumpulan karakter
extended ASCII
menggunakan kode 80
H-FF H. karakter extended ASCII menyimpan huruf-huruf asing dan tanda baca,
karakter greek (Yunani), karakter matematika, karakter-karakter box drawing,
dan karakter-karakter khusus lainnya. Data ASCII dapat disimpan dalam memori
menggunakan direktif khusus program assembler yaitu Define Byte (DB) atau Byte.
BCD(Binary Code
Desimal)
Informasi BCD disimpan
dalam bentuk packed atau unpacked. Data packed disimpan dalam bentuk dua digit
per byte, sedangkan data BCD unpacked disimpan satu digit per byte. Rentang
digit BCD antara 0000B sampai 1001B BCD unpacked sering digunakan oleh keypad
atau keyboard, sedangkan BCD Packed digunakan untuk beberapa instruksi termasuk
untuk penjumlahan dan pengurangan BCD dalam kumpulan instruksi di CPU.
UNSIGN dan SIGN
INTEGER
Data Ukuran Byte data
ukuran byte disimpan dalam unsigned dan signed integer(bilangan bulat tak
bertanda dan bilangan bulat bertanda). Perbedaan dalam bentuk ini adalah bobot
dari posisi paling kiri. Untuk unsign integer nilainya 128 dan untuk signed
integer nilainya adalah -128. dalam format signed, bit yang paling kiri adalah
bit tanda bilangan.
Kisaran dari unsigned
integer adalah 0 sampai 255, sedangkan signed integer berkisar antara -128
sampai +127. Bilangan negatif disajikan dalam bentuk ini, tetapi disimpan dalam
bentuk komplement dua, seperti yang telah dijelaskan diatas.UNSIGN dan SIGN
INTEGER
Data Ukuran Word Satu
ukuran word dibentuk oleh dua byte data. LSB selalu disimpan dalam lokasi
memori paling rendah, dan MSB disimpan yang paling tinggi.
Metode
untukpenyimpanan ini disebut dengan format little endian. Metode alternatif
disebut format big endian. Untuk menyimpan data ukuran word dalam memori,
digunakan direktif DW(Define Word). Namun biasanya data yang berukuran lebih
dari 8 bit disimpan menggunakan format little endian.
3. Proses untuk
mendapatkan hasil dari angka desimal 217(10) XNOR 230(10)
1.
102
101
100
2
1
7
N= 2x102
1x101 7x100
Nilai angka desimalnya adalah 200 + 10 + 70 = 280
2.
102
101
100
2
3
0
N= 2x102
3x101 0x100
Nilai angka desimalnya adalah 200 + 30 + 0 = 230
4. Insertion Sort (Metode Penyisipan)
- Insertion Sort
merupakan algoritma yang efisien untuk mengurutkan angka yang mempunyai jumlah
elemen sedikit. Dimana:
- Input : deretan angka sejumlah n buah
- Output : permutasi (pengurutan) sejumlah n angka dari input yang sudah terurut secara ascending maupun descending
· - Metode penyisipan
(Insertion sort) bertujuan untuk menjadikan bagian sisi kiri array terurutkan
sampai dengan seluruh array berhasil diurutkan.
· - Metode ini mengurutkan
bilangan-bilangan yang telah dibaca; dan berikutnya secara
berulang akan menyisipkan bilangan-bilangan dalam array yang belum terbaca ke sisi kiri array yang telah terurut.
berulang akan menyisipkan bilangan-bilangan dalam array yang belum terbaca ke sisi kiri array yang telah terurut.
· - Insertion Sort bekerja
seperti banyak orang yang sedang mengurutkan kartu di tangan. Dimulai dengan
tangan kiri yang kosong dan kartunya tertumpuk di meja. Selanjutnya kita ambil
satu persatu kartu di meja dan diletakkan di tangan kiri dengan posisi yang
benar (terurut). Untuk menemukan posisi yang banar, maka kita harus membandingkan
satu persatu kartu yang ada (di tangan kiri) secara berurutan.
![]() Contoh Insertion Sort : ![]()
· Bagian biru/abu-abu
(dua bilangan pertama) sekarang dalam keadaan terurut secara relatif.
![]() Berikutnya, kita perlu menyisipkan bilangan ketiga (4) ke dalam bagian biru/abu-abu sehingga setelah penyisipan tersebut, bagian biru/abu-abu tetap dalam keadaan terurut secara relatif; CARANYA : pertama : Ambil bilangan ketiga (4). ![]()
·
Kedua : Geser bilangan
kedua (10) shg ada ruang untuk disisipi.
![]()
·
Ketiga : Sisipkan
bilangan 4 ke posisi yang tepat
![]()
· Sekarang, tiga
bilangan pertama sudah terurut secara relatif dan kita sisipkan bilangan
keempat kepada tiga bilangan pertama tsb. Setelah penyisipan, empat
bilangan pertama haruslah dalam keadaan terurut secara relatif.
![]()
·
Ulangi proses
tsb sampai bilangan terakhir disisipkan
![]() ![]()
·
Proses Sorting
Selesai
|









Tidak ada komentar:
Posting Komentar