Teknik Kompilasi-Code Generator

2 buah titik A dan B berada pada suatu grafik. Salah satu dari titik tersebut membentuk lingkaran dengan jari-jari r. Buatlah pseudocode dan code generator untuk menentukan apakah salah satu titik tersebut berada pada lingkaran, atau berada di luar lingkaran, atau berada di dalam lingkaran!

Pseudocode
int s, x, y
input ax, ay, bx , by, r
x=bx -ax
y=by-ay
s=akar (x*x)+(y*y)
if(s==r)
print tetap di titik
else if(s>r)
print luar titik
else
print dalam titik

Code Generator
01 Mov bx, R0
02 Sub ax, R0
03Mov R0, x

04 Mov by, R1
05 Sub ay, R1
06 Mov R1, y

07 Pow R0, R0
08 Pow R1, R1
09 Add R1, R0
10 Sqrt R0, R0
11 Mov R0, s

12 Mov s, R0
13 Eq r, R0
14 Jmpf R0, (19)
15 Print “tetap di titik”
16 Jmp , (22)

17 Gt r, R0
18 Jmpf R0, (21)
19 Print “luar titik”
20 Jmp , (22)
21 Print “dalam titik”
22 …

www.binus.ac.id

Posted in Teknik Kompilasi | Leave a comment

Analisis Entity Relationship Diagram Untuk Twitter

library

Penjelasan dari Entity Relationship Diagram

Dalam analisis kami, fitur twiter yang kami fokuskan adalah Follow, Tweet Activity (Membuat tweet baru, retweet dan membalas tweet) serta pesan (mengirim dan menerima pesan).

Data pengguna twitter akan disimpan dalam table MsUser, dimana primary key nya adalah UserID, sedangkan UserName dan Email dibuat unique. Kami tidak membuat UserName sebagai Primary Key supaya lebih memudahkan dalam proses update atau delete tabel lain meskipun username sering diubah oleh pengguna. UserStatus untuk mengetahui apakah user ingin tweetnya bersifat public atau private. Bila bersifat public, semua user dapat melihat tweet dari user tersebut. Sementara bila bersifat private, tweet dari user tersebut hanya dapat dilihat oleh user yang menfollow.

Dalam table TrFollowUser terdapat transaksi follow maupun block, tergantung dari kolom Status. Table ini akan memetakan Setiap UserID yang difollow (FollowedID) dan UserID yang men-follow (FollowerID).

Table TrTweet akan menyimpan tweet, dimana link akan disimpan dalam kolom Link (Untuk tweet berupa URL ataupun gambar, dapat berisi NULL) dan Content yang akan berisi text. ReferencesTweet akan menyimpan TweetID lain, jika tweet tersebut merupakan hasil retweet atau mereply suatu tweet. Jika tweet yang di post adalah tweet baru maka ReferencesTweetnya adalah kosong (NULL).

Table TrDirectMessage berisi transaksi kirim-mengirim pesan.

Secara keseluruhan setiap tabel mengandung kolom AuditedActivity, AuditedTime dan AuditedUser. AuditedActivity berisi status dari baris tersebut, apakah sudah terhapus, terupdate atau baru terinsert. AuditedTime menyimpan waktu terakhir dari insert, update atau delete baris tersebut sedangkan AuditedUser untuk menyimpan ID dari user yang terakhir mengubah baris tersebut.

www.binus.ac.id

Posted in Web Database | Leave a comment

CREATE TABLE MENGGUNAKAN SYNTAX DEFAULT DALAM SQL

Uji coba kali ini saya akan mencoba untuk create table menggunakan Tipe data yang terdapat dalam SQL :
1. VARCHAR

CREATE TABLE VARCHAR
(
VARCHARID VARCHAR(100)
)

Hasil eksekusi DDL di atas akan “berhasil”

Lalu setelah di create table tersebut saya mencoba untuk mmemasukan value kedalam attribute tersebut dengan syntax :
INSERT INTO VARCHAR VALUES(‘VID000001’)

setelah itu saya mengambil data didalam tabel tersebut :
SELECT * FROM VARCHAR

dan hasilnya seperti di bawah ini :

Select VARCHAR

Berikutnya saya mencoba create tabel dengan tipe data INT dan hasilnya sama “Berhasil”

CREATE TABLE INT
(
TABELID INT
)

INSERT INT VALUES(5)
SELECT * FROM INT

Kesimpulannya :
Berdasarkan dua percobaan di atas dapat di ambil kesimpulan bahwa , CREATE TABLE didalam database dengan menggunakan nama tipe data dapat di lakukan tanpa terjadi error.

Tipe data di atas telah saya coba langsung menggunakan sqlserver 2008 , untuk tipe data lain teman – teman dapat mencoba kembali untuk memastikan .

www.binus.ac.id

Posted in Web Database | Leave a comment

TM1- Web Database

Data
– Data item merupakan sekumpulan data fakta yang menarik yang di simpan kedalam database
– Value merupakan Nilai yang tersimpan didalam atribut relational database , biasanya berupa varchar , char , integer atau number
– Literal merupakan sebuah representasi yang dapat di baca berupa nilai
– Variabel merupakan sebuah container yang di gunakan untuk menampung value.
– Operator merupakan sebuah symbol yang di gunakan untuk memanipulasi data.
Contohnya : tambah , kurang , kali , bagi
– Expression merupakan Kombinasi yang valid dari literal , variable dan operator
Tipe Data
– Data type merupakan tipe data yang merepresentasikan nilai dari data tersebut.
– User Defined types merupakan Hak akses user yang di tetapkan oleh Database Designer atau Database Administrator terhadap suatu aplikasi yang memungkinkan user untuk melihat data pada bagian tertentu didalam database.
– System Defined types di bangun di dalam suatu DBMS . Jadi setiap aplikasi pasti memiliki System Defined types.
Relational Data Model
– Attribute merupakan property yang di miliki oleh entitas/ relationship.
– Attribute domain merupakan nilai yang di perbolehkan oleh 1 atau lebih attribute
cth : Jenis kelamin.
– Simple attribute merupakan Komponenny 1 contoh NIM, Single Value
– Composite Attribute merupakan punya sub attributes, multiple value
cth :
Notelepon bisa 2 untuk tiap orang.
Nama terdiri dari nama awal , tengah , dan akhir.
– Primary Key merupakan attribute unique didalam suatu entitas yang membedakan record yang satu dengan lainnya.
– Foreign Key merupakan attribute didalam suatu entitas yang merepresentasikan nilai yang terdapat di entitas lain.
– Candidate Key merupakan attribute unique didalam suatu entitas atau calon Primary Key didalam suatu entitas.
– Perbedaan tabel dasar dengan tabel turunan.
Tabel dasar adalah tabel dasar yang memiliki instance yang disimpan dalam media penyimpanan persisten.
tabel turunan adalah tabel yang diperoleh dari hasil turunan tabel dasar (view) lainnya dan memiliki instance yang tersimpan dalam memori.

www.binus.ac.id

Posted in Web Database | Leave a comment

TM2 – Teknik Kompilasi

Top Down Parsing dapat dipandang sebagai :

  • Usaha untuk mencari left-most derivation dari suatu input string
  • Usaha untuk membangun parse tree dari suatu input string, dimulai dari root (top) sampai dengan leaves (bottom), dengan urutan pre-order

.

Mengapa di dalam top-down parsing tidak boleh ada left-factoring atau left-recursive?

Di dalam top-down parsing tidak boleh ada left-recursive karena grammar yang mengandung left-recursive dapat mengakibatkan loop tak berhingga. Selain itu, suatu top-down parsing yang memerlukan backtracking (membaca input berulang kali) itu tidak efisien.

Contoh grammar yang memiliki loop tak berhingga:
left recursif looping

Sedangkan adanya left-factoring pada top-down parsing akan menimbulkan ambiguitas. Ambiguitas terjadi ketika dua aturan untuk non-terminal memiliki sisi kanan yang dimulai dengan simbol yang sama, sehingga kita tidak bisa memprediksi grammar mana yang akan digunakan.

Contoh grammar yang bersifat ambigu:

Misalnya :

Grammar :
S ->iEtS | iEtSeS | a
E ->b

Dituliskan menjadi :

S ->iEtSS’ | a

S’-> ε | eS

E -> b

Kelompok 10 :
Vebyana- 1501148122
Feegi Kasah Valencia-1501142314
Herlina Astari -1501155506
Sarah Fitria – 1501152870
Haris Winoto – 1501188611

www.binus.ac.id

Posted in Teknik Kompilasi | Leave a comment

TM1 – Teknik Kompilasi

Soal :
Buatlah Soal RE dan konversikan ke DFA dengan 2 cara , berikut constraintnya:
⦁ Jumlah State DFA min 5 dan max 8.
⦁ Jumlah Final State DFA min 2 dan max 3.

Tentukan : DFA dengan menggunakan metode tree dan metode ε-NFA dan buatlah Minimized DFA
RE : ( a | b )* ( aa | bb )

Dengan metode tree dan followpost
RE : ( a | b )* . ( a . a | b . b ) . #
1 2 3 4 5 6 7

Tree

S0 = 1,2,3,5
Followpos 1 = 1, 2, 3, 5
Followpos 2 = 1, 2, 3, 5
Followpos 3 = 4
Followpos 4 = 7
Followpos 5 = 6
Followpos 6 = 7
Followpos 7 = –

Followpos

sehingga DFA yang dihasilkan :

DFA

Minimalisasi DFA
Memisahkan final sate dengan non-final state

Minimalisasi DFA

Karena tidak adanya state yang memiliki index yang sama pada inputan a dan b dengan state lainnya maka DFA yang ada sudah merupakan DFA minimal
Minimalisasi DFA

Dengan metode ε- NFA dan ε – Closure

E-NFA -> DFA

Kelompok 5

Bernardus Robby 1501144332

Glory Tania 1501187470

Haris Winoto 1501188611

Rifan Wijaya 1501145700

www.binus.ac.id

Posted in Teknik Kompilasi | Leave a comment