• Data type menjelaskan kumpulan objek data dan sebuah set operasi yang telah ditetapkan pada objek tersebut. Descriptor adalah kumpulan atribut dari sebuah variabel. Salah satu permaslahanan desain untuk semua tipe data adalah operasi apa yang didefinisikan dan bagaimana mereka ditentukan?.

    • Primitive Data Type

    Primitive data type adalah tipe data yang berbentuk primitive, dan pasti ada dalam setiap bahasa pemrograman.

    Contoh dari primitive data type :

    – Integer

    – Floating Point

    – Complex

    – Decimal

    – Boolean

    – Character

     

    • Character String Type

    Character String Type adalah satu tipe di mana nilai-nilai terdiri dari urutan karakter. Karakter string yang konstan digunakan untuk label output, dan input

    dan output dari semua jenis data yang sering dilakukan dalam hal string.

    Adapun Permasalahan pada character string type :

    o   Apakah tipe primitif atau hanya jenis khusus array?

    o   Haruskah panjang string statis atau dinamis?

    Tipe – tipe operasi :

    o   Assignment and copying

    o   Comparison (=, >, etc.)

    o   Catenation

    o   Substring reference

    o   Pattern matching

     

    • User Defined Ordinal Type

    User defined ordinal type Adalah kisaran nilai yang mungkin dapat dengan mudah terkait dengan himpunan bilangan bulat positif.

    3 tipe data user defined primitive :

    o   Integer

    o   Char

    o   Boolean

     

    • Enumeration Type

    Enumeration type  adalah semua nilai yang mungkin, dimana dinamai konstan, dan memberikan, atau, disebutkan  dalam definisi. Fungsinya untuk memudahkan dalam tipe data grup.

    Contoh :

     

    enum days {Mon, Tue, Wed, Thu, Fri, Sat, Sun};

     

    • Subrange Type

    Subrange type adalaah Sebuah subsequence berdekatan memerintahkan tipe ordinal

     

    • Implementation of User-Defined Ordinal Types

    Enumeration type diimplementasikan sebagai Integer

     

    Subrange types diimplementasikan seperti type parent dengan kode dimasukkan (oleh kompiler) untuk membatasi tugas untuk subrange variabel

     

    • Array Type

    Array adalah agregat homogen elemen data di mana seorang individu elemen diidentifikasi oleh posisinya dalam agregat, relatif terhadap elemen pertama.

     

    Subscript Binding and Array Categories

    –          Static = rentang subscript yang statis terikat dan alokasi penyimpanan statis (dilakukan sebelum run time).

    –          Fixed stack-dynamic = rentang subscript yang statis terikat, namun alokasi dilakukan pada saat deklarasi elaborasi selama

    eksekusi.

    –          Stack-dynamic = rentang subscript dan alokasi penyimpanan dinamis terikat pada waktu elaborasi.

    –          Fixed heap-dynamic = rentang subscript dan storage binding keduanya tetap, setelah penyimpanan dialokasikan.

    –          Heap-dynamic = pengikatan rentang subscript dan alokasi penyimpanan dinamis dan dapat berubah beberapa kali selama seumur hidup array.

     

    • Heterogeneous Arrays

    Heterogeneous array adalah satu di mana unsur-unsur tidak perlu dari jenis yang sama.

    Rectangular array adalah array multidimensional di mana semua baris memiliki jumlah yang sama elemen dan semua kolom memiliki jumlah yang sama dari elemen. Array Rectangular bermodelkan meja persegi panjang.

    jagged array adalah di mana panjang dari baris tidak perlu menjadi sama. Sebagai contoh, sebuah matriks jagged dapat terdiri dari tiga baris, satu dengan 5 elemen, satu dengan 7 elemen, dan satu dengan 12 elemen.

     

    • Associative Arrays

    Associative Arrays adalah koleksi tak berurut elemen data yang diindeks oleh jumlah yang sama nilai-nilai yang disebut kunci.

     

    • Record Type

    Record adalah jumlah elemen data di mana unsur-unsur individu

    diidentifikasi oleh nama dan diakses melalui offset dari awal

    struktur. Record adalah agregat mungkin heterogen elemen data di mana unsur-unsur individu diidentifikasi dengan nama

     

    • Tuple Type

    Tuple adalah adalah tipe data yang mirip dengan catatan, kecuali bahwa unsur-unsur yang tidak bernama .

    Digunakan dalam Python, ML, dan F # untuk memungkinkan fungsi untuk kembali beberapa nilai

     

    • List Type

    Lists pertama kali didukung dalam bahasa pemrograman fungsional LISP. Mereka selalu menjadi bagian dari bahasa-bahasa fungsional, tetapi dalam beberapa tahun terakhir mereka telah menemukan cara mereka ke dalam beberapa bahasa imperatif.

    Lists  dalam Skema dan LISP dipisahkan oleh tanda kurung dan

    unsur tidak dipisahkan oleh tanda baca apapun. Sebagai contoh,

    (A B C D)

    Nested lists memiliki bentuk yang sama, sehingga kita bisa memiliki

    (A (B C) D)

     

    • Union Type

    Union adalah jenis variabel yang dapat menyimpan nilai jenis yang berbeda pada waktu yang berbeda selama eksekusi program. Sebagai contoh kebutuhan untuk jenis serikat, mempertimbangkan tabel konstanta untuk compiler, yang digunakan untuk menyimpan konstanta ditemukan dalam program yang dikompilasi.

     

    • Pointer and Reference Types

    Sebuah variabel tipe pointer memiliki berbagai nilai-nilai yang terdiri dari alamat memori dan nilai khusus, nil. Memliki kemampuan untuk indirect addressing . memberikan cara untuk me manage dynamic memory. Pointer dapat digunakan sebagai akses lokasi di area penyimpanan dinamis(Heap)

     

    • Pointer Operations

    Terdiri dari 2 operasi :

    Assignment = digunakan untuk menetapkan nilai variabel pointer untuk beberapa alamat berguna

    Deferencing = menghasilkan nilai yang disimpan di lokasi yang diwakili oleh nilai pointer ini

     

    • Problem pada Pointer

    Dangling pointers = Sebuah pointer menunjuk ke variabel tumpukan-dinamis yang telah deallocated

    Lost heap-dynamic variable = Sebuah variabel heap-dinamis dialokasikan yang tidak lagi dapat diakses oleh program pengguna

    • Reference Counter

    Maintain counter di setiap cell yang menyimpan jumlah pointer yang saat ini menunjuk pada cell

    Kekurangan : ruang yang dibutuhkan, waktu eksekusi yang dibutuhkan, komplikasi untuk sel terhubung sirkuler

    keuntungan :intrinsik tambahan, sehingga penundaan yang signifikan dalam pelaksanaan aplikasi dihindari

     

    • Type Checking

    Type checking adalah kegiatan memastikan bahwa operan dari operator adalah dari jenis yang compatible .

    Compatible type adalah salah satu yang legal bagi operator, atau diperbolehkan di bawah aturan bahasa yang akan dikonversi secara implisit, dengan kode compiler yang dihasilkan, untuk tipe legal. Konversi otomatis ini disebut coercion.

    Type error adalah aplikasi operator untuk operan dari tipe yang tidak layak

     

    • Strong Typing

    Strong Typing adalah jika jenis kesalahan selalu terdeteksi. Ini mensyaratkan bahwa semua jenis operan dapat ditentukan, baik pada waktu kompilasi atau run time. Pentingnya String typing terletak pada kemampuannya untuk mendeteksi semua penyalahgunaan variabel yang menghasilkan jenis kesalahan. Strong typing juga memungkinkan deteksi, pada waktu berjalan, kegunaan dari jenis yang salah nilai dalam variabel yang dapat menyimpan nilai lebih dari satu jenis.

    Posted by lorenzodor @ 4:37 pm

  • Leave a Reply

    Your email address will not be published. Required fields are marked *

 
WP_Modern_Notepad

Recent Comments

 
WP_Modern_Notepad

Recent Comments

Rekomendasi situs toto 98 toto

buku mimpi 3d terlengkap Teruapdate Terlengkap Paling Rekomended