ch 6 Flashcards

(34 cards)

1
Q

Vad är en variabel i ett programmeringsspråk?

A

En variabel är ett namngivet utrymme i primärminnet (main memory)

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

Varför är det nödvändigt att veta vilken datatyp en variabel har?

A

Datatypen anger hur vi skall tolka det bitmönster som ligger lagrat i variabeln

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

Vad är skillnaden mellan källkod och objektkod?

A

Källkod är den programkod som programmeraren skriver

Objektkod är den översättning av källkoden som går att köra på en dator

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

Producerar ett syntaktiskt korrekt program alltid korrekta resultat? Motivera ditt svar

A

Nej, ett syntaktiskt korrekt program kan innehålla fel, t.ex. logiska fel, som gör att programmet ger inkorrekta resultat

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

Vad kallas ett program som översätter källkod till maskinkod?

A

Kompliator (compiler)

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

Vad kännetecknar en datastruktur av typen struct/record (aggregate type)?

A

Att det är en datastruktur sammansatt av data som kan ha olika typ

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

Vad innebär det att en parameter till en subrutin överförs som värde (passed by value)?

A

Passed by value, innebär att parametern överförs som ett kopierat värde och att detta kopierade värde lagras i en lokal variabel i subrutinen.

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

Vad innebär det att en parameter till en subrutin överförs som referens (passed by reference)?

A

Passed by reference, innebär att parametern överförs som en referens till en plats där den ligger lagrad, vilket innebär att eventuella ändringar görs i den ursprungliga variabeln.

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

Vad gör en assemblator/assemblerare (assembler)?

A

Assemblator/assemblerare (assembler) omvandlar assemblerkod (assembly code) till maskinkod

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

Vad kännetecknar en datastruktur av typen array?

A

Att alla element i datastrukturen är av samma datatyp, och att de enskilda elementen nås via index

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

Vilka är de fyra stora programmeringsparadigmerna (programming paradigms)?

A

Funktionell - basic building block: functions

Objektorienterad - basic building block: objects

Imperativ - basic building block: procedures

Deklarativ (logik-) programmering - basic building block: logical formulas

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

Ange fyra vanliga primitiva datatyper.

A

Heltal (integer)

Flyttal (floating point number)

Tecken (character)

Boolean (sanningsvärde)

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

Vad gör en kompilator (compiler)?

A

En kompilator översätter källkod, skriven i ett programmeringsspråk, till exekverbar maskinkod

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

Ett program kan ge upphov till tre olika typer av fel: syntaktiska fel (syntactic errors), exekveringsfel (runtime errors) och logiska fel (logic errors). Vilken typ av fel är mest allvarliga och varför?

A

Logiska fel, eftersom de inte ger upphov till något felmeddelande

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

Ett program kan ge upphov till tre olika typer av fel: syntaktiska fel (syntactic errors), exekveringsfel (runtime errors) och logiska fel (logic errors). Vilket typ av fel är minst allvarliga och varför?

A

Syntaktiska fel, eftersom de upptäcks redan av kompilatorn

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

Vad är skillnaden mellan en kompilator (compiler) och en interpretator (interpreter)?

A

En kompilator (compiler) översätter programkod/källkod till maskinkod.

En interpretator (interpreter) tolkar programkod/källkod vid själva körningen och utför då instruktionerna i programkoden/källkoden

17
Q

Vad är concurrent programming?

A

Programmering där man programmerar flera parallella exekveringsvägar (trådar) i samma program

18
Q

En variabel pekar på ett bitmönster i lagrat i minnet; vad behöver vi veta för att kunna tolka bitmönstret på rätt sätt?

A

Vilken datatyp variabelns data har. Det är datatypen som anger hur programmet skall tolka det bitmönster som ligger lagrat i variabeln

19
Q

Vad innebär begreppen sekvens, selektion och iteration?

A

Sekvens - en följd av instruktioner som utförs i ordning

Selektion - olika instruktioner utförs beroende på programmets tillstånd

Iteration - samma (sekvens av) instruktioner utförs flera gånger (beroende på programmets tillstånd)

20
Q

Översättningsprocessen (translation process) av ett källkodsprogram (source program) till ett objektkodsprogram (object program) består av tre aktiviteter, vilka?

A

Lexical analysis

Parsing

Code generation

21
Q

Ge exempel på två olika sätt att beskriva algoritmer.

A

Flödesdiagram

Pseudokod

22
Q

Vilken generation av programmeringsspråk kännetecknas av:
- ett-till-ett-förhållande mellan språkinstruktioner och maskininstruktioner;
- inneboende maskin-beroende?”

A

Andra generationen

23
Q

Vilken generation av programmeringsspråk kännetecknas av:
- maskinoberoende (vanligtvis);
- varje primitiv motsvarar en sekvens av maskinspråksinstruktioner?

A

Tredje generationen. Third generation

24
Q

Vad är en literal i ett programmeringsspråk?

A

Ett explicit värde av en viss datatyp

25
Vad är en konstant i ett programmeringsspråk?
En namngiven literal. / Ett namngivet värde av en viss datatyp
26
I objektorienterad programmering har man klasser och objekt. Utöver detta så finns det tre egenskaper som kännetecknar objektorienterad programmering, vilka?
Inheritance, (arv, återanvända code, ett smidingt sätt att återanvända code) Encapsulation, (inkapsling, innut i en class, viss represention, skiljer kod med annan kod som är inkapslad i koden, som ej brör reseten av koden) Polymorphism, (lite överkus)
27
Översättningen från källkod till maskinkod sker i tre steg av tre olika enheter i översättaren; vad kallas dessa tre enheter?
Lexical analysis Parsing Code generation
28
Vad är en tråd i concurrent programmering?
En concurrent/parallell exekveringsväg inom samma program/process
29
Vad kallas den grundläggande byggstenen i imperativa programmeringsspråk?
Procedur
30
Vad kallas den logiska härledningsteknik som används i logikprogrammering?
Logisk formel (predikat)
31
I objektorienterad programmering, vad kallas mallarna från vilka objekt skapas?
Klasser (Class) - mall från vilken objekten är konstruerade
32
Alla programmeringsspråk har tre typer av styrning av programflödet, vilka?
Sekvens Selektion Repetition
33
Vad är syftet med att använda procedurenheter (subprogram, subrutin, procedur, funktion, metod, predikat etc.) vid programmering?
Används för att förenkla programutveckling genom abstraktion
34
Vad innebär arv i objektorienterad programmering?
Arv tillåter en klass att omfatta egenskaper hos en annan klass utan att explicit behöva deklarera dem