Data types Flashcards

1
Q

Data type nedir

A

Bir değişkenin değer aralığı ile üzerine etkiyen işlemlerin çeşitliliğini belirleyen kavram

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Primitive data type nedir, nelerdir?

A

Çoğunlukla donanımın bir yansıması olan veritipleridir.
*Numerics
—Integer -> byte short int long…
—Complex -> j = (-1)^1/2 (python)
—Decimal -> sabit sayıda ondalık değer
—Floating point -> 1 8 23, 1 11 52
*Boolean ->True/False
*Character -> ASCII’ye uygun olarak 4 Byte kadar sayı saklar

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Character String nedir

A

Karakterlerin bir araya gelmesi ile oluşan yapıdır.
İki problemi vardır, primitive olacaklar mı? Uzunlukları sabit mi olacak?

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

String primitive problemi

A

C,C++ not primitive
Snobol4 primitive
Java, String classı ile primitive

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

String uzunluk problemi

A

Cobol, Java ->Static
C, C++ -> Limited-Dynamic. /0 eklenir sonuna. Array uzunluğu tutmaz.
Snobol, Perl, Js->Dynamic

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

String işlemleri

A

Assign
Comparision,
Concat,
Copy,
Substring,
PatternMatch

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

String implementationu

A

<static>
CompilerTime Descriptor
name - address - length
<limited>
Runtime Descriptor
name - address - maxLength - currentLength
<dynamic>
Runtime Descriptor
name - address - currentLength
</dynamic></limited></static>

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

User-Defined ordinal types nedir

A

Ordinal type -> tamsayılarla ifade edilebilir değerleri olan yapılar. Mesela boolean -> 0,1
UserDefinedler -> Enumeration, Subrange

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

C enum örneği var arkada

A

enum Color {black, white}
Color mycolor = black;
mycolor++; (şimdi beyaz oldu)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Subrange (ada) örneği var arkada

A

type Days is {mon, tue, wed, thu, fri, sat, sun};
subtype weekend is Days range sat…sun;

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Enumlar ve subrangeler memoryde nasıl saklanır

A

Enumlar int
subrangeler ne tipi ise ondan

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Array nedir

A

Aynı tipte verilerin, ilk verinin adresine rölatif olarak adreslendiği veri tipi.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Array subscript nedir, türleri nedir

A

Subscriptleme ile indexleme aynı şey.
Fortran, C, Java sadece int alıyor
Pascal herhangi bir ordinal
Ada integer veya enum

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Static array nedir

A

Derleme zamanında boyutu belirlenen, lifetimeı da program olan dizi

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Fixed Stack-Dynamic array nedir

A

Bir subprogram altında oluşan, runtimeda boyutu belirlenen ve subprogram boyunca yaşayan dizi

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Stack dynamic array nedir

A

Bir subprogram altında oluşan, runtimeda boyutu ve lifetimeı belirlenen dizi

17
Q

Fixed Heap-Dynamic array nedir

A

Heap’e tahsis edilen ve boyutu runtimeda belirlenen dizi

18
Q

Heap-Dynamic array nedir

A

Heap’e tahsis edilen ve boyutu ve lifetimeı runtimeda belirlenen dizi

19
Q

Array adresleme fonksiyonu nedir

A

address(list[k]) = address(list[altsınır]) + ((k - altsınır)* eleman boyutu)

20
Q

Multidimensional array adresleme fonksiyonu nedir

A

location(a[i,j]) = address(a[altRow,altCol]) + ((i-altRow)n + (j - altCol))eleman boyutu
n-> dizinin sütun sayısı

21
Q

Record Type nedir

A

Birden fazla türde veriyi aynı anda bulundurabilen veri tipi

22
Q

Arraylardan en büyük farkı nedir, avantajı nedir

A

Indexleme yerine direkt olarak record fieldların adı ile erişim sağlamaları. Hızı arttırır.

23
Q

Cobol record örneği var

A

01 EMPLOYEE.
02 NAME.
04 FIRST PICTURE IS X(20).
04 LAST PICTURE IS X(20).
02 HOURLYRATE PICTURE IS 99V99.

9 SAYI, V . İŞARETİ, X HERHANGİ BİR KARAKTER
ERİŞİM YOLU FIRST OF NAME OF EMPLOYEE

24
Q

Pascal record örneği var

A

type Employee=
record
name : array[1…20] of char;
experiment : integer;
end;

25
Q

C örneği var

A

Struct Date{
int Day;
int Month;
int Year;
char* Date;}

26
Q

Union Type nedir

A

Bir değişkenin farklı zamanlarda farklı tipe bağlanmasını sağlayan yapılardır.
Pascalda unionlar case eklenmiş recordlardır.

27
Q

Union Type tipleri nelerdir

A

Discriminated -> Type Checking var ise
Free -> Type Checking yok ise

28
Q

Pointer nedir

A

Memory adresleri ve nil değeri aralığında değer alabilen bir veri tipidir.
İlk olarak PL/I’da ortaya çıkmıştır.
*ptr (C, C++) veya ptr^ (Pascal)
int j = *ptr işlemi -> ptr’nin gösterdiği adresteki değeri j’ye ata.

29
Q

Pointer problemleri nelerdir

A

Dangling problem -> Pointer, gösterdiği değer kaybolunca boşta kaldı.
Lost Heap Dynamic Variable -> Hiçbir pointerin artık göstermediği değer nerede bulamıyoruz.

30
Q

C’de pointer gösterme örneği

A

Struct Yapı{int sayac;};
Struct Yapı yapı1;
Struct Yapı *ptr = &yapı1;
ptr->sayac
(**ptr).sayac değerleri yapı1’in sayacını döndürür

31
Q

Pointer arithmetic örneği

A

float stuff[100];
float *ptr = stuff;
// *(ptr + x) = stuff[x] //

32
Q

Referance nedir

A

C ve C++’da & operatörü değişkenin adresini döndürür.

33
Q

Tombstone Pointer nedir

A

Bir cell’i bir tombstone gösterir, diğer pointerlar ise tombstoneu. Tombstone nil olunca diğerleri de nil olur.

34
Q

Referance Collector

A

Referans sayısını tut, 0 olunca memory celli boşalt.

35
Q

Garbage Collector

A

Belirli aralıklarla kontrol et, ref sayısı 0 ise boşalt.

36
Q

Type Checking nedir

A

Bir operatorün operandlarının uygun tiplerde olması.

37
Q

Name type compability nedir

A

Birbiri ile aynı ya da dönüştürülebilir tipte elemanlar

38
Q

Struct type compability nedir

A

Aynı sırada aynı tür elemanlar içeren structlar