IDSV Kap 6 Programming Languages

0.0(0)
Studied by 0 people
call kaiCall Kai
Locked
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/48

encourage image

There's no tags or description

Looks like no tags are added yet.

Last updated 12:10 PM on 9/19/26
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai
Chat

No analytics yet

Send a link to your students to track their progress

49 Terms

1
New cards
Vad är en variabel i ett programmeringsspråk?
Ett namn som används för att referera till en minnesplats där ett värde lagras.
2
New cards
Varför är det nödvändigt att veta vilken datatyp en variabel har?
Datatypen talar om hur bitmönstret som variabeln refererar till ska tolkas och vilka operationer som kan utföras på värdet.
3
New cards
Vad är skillnaden mellan källkod (source code) och objektkod (object code)?
Källkod är programmet i det programmeringsspråk programmeraren skriver i, medan objektkod är den översatta representation som produceras av översättningsprocessen och ligger närmare maskinens språk.
4
New cards
Producerar ett syntaktiskt korrekt program alltid korrekta resultat? Motivera.
Nej. Ett program kan vara syntaktiskt korrekt men fortfarande innehålla logiska fel och därför producera fel resultat.
5
New cards
Vad kallas ett program som översätter källkod till maskinkod?
En kompilator (compiler).
6
New cards
Vad kännetecknar en datastruktur av typen struct/record (aggregate type)?
Den samlar flera relaterade dataelement, och elementen kan vara av olika datatyper.
7
New cards
Vad innebär det att en parameter till en subrutin överförs som värde (passed by value)?
Subrutinen får en kopia av argumentets värde. Ändringar av parametern i subrutinen ändrar därför inte originalvärdet.
8
New cards
Vad innebär det att en parameter till en subrutin överförs som referens (passed by reference)?
Subrutinen får en referens till originalets minnesplats, vilket innebär att ändringar genom parametern kan påverka originalvärdet.
9
New cards
Vad gör en assemblator/assemblerare (assembler)?
Den översätter assembly language till machine language.
10
New cards
Vad kännetecknar en datastruktur av typen array?
En array består av en samling element av samma typ som organiseras så att individuella element kan identifieras med index.
11
New cards
Vilka är de fyra stora programmeringsparadigmerna?
Imperative, functional, object-oriented och declarative programming.
12
New cards
Vad är den grundläggande byggstenen i imperative programming?
Procedures.
13
New cards
Vad är den grundläggande byggstenen i functional programming?
Functions.
14
New cards
Vad är den grundläggande byggstenen i object-oriented programming?
Objects.
15
New cards
Vad är den grundläggande byggstenen i logic/declarative programming?
Logical formulas.
16
New cards
Ange fyra vanliga primitiva datatyper.
Integer, floating-point, character och Boolean.
17
New cards
Vad gör en kompilator (compiler)?
Den översätter ett program skrivet i ett högnivåspråk, exempelvis ett third-generation language, till maskinspråk.
18
New cards
Vad är ett syntaktiskt fel (syntactic error)?
Ett fel där programmets kod bryter mot programmeringsspråkets syntaxregler.
19
New cards
Vad är ett exekveringsfel (runtime error)?
Ett fel som uppstår medan programmet körs.
20
New cards
Vad är ett logiskt fel (logic error)?
Ett fel där programmet kan köras men utför fel beräkning eller producerar fel resultat.
21
New cards
Vilken av syntactic errors, runtime errors och logic errors är mest allvarlig och varför?
Logiska fel är mest allvarliga eftersom programmet kan köras utan att något tydligt fel upptäcks men ändå producera felaktiga resultat.
22
New cards
Vilken av syntactic errors, runtime errors och logic errors är minst allvarlig och varför?
Syntaktiska fel är minst allvarliga eftersom de upptäcks av översättaren innan programmet kan köras och därför normalt är enklare att identifiera och rätta.
23
New cards
Vad är skillnaden mellan en compiler och en interpreter?
En compiler översätter programmet till en annan kodrepresentation före exekveringen, medan en interpreter utför instruktionerna genom att tolka dem under programmets körning.
24
New cards
Vad är concurrent programming?
Programmering där flera aktiviteter eller exekveringsförlopp kan pågå samtidigt eller överlappande.
25
New cards
Vad är sekvens (sequence)?
Att instruktioner utförs i en bestämd ordning efter varandra.
26
New cards
Vad är selektion (selection)?
Att programmet väljer mellan olika vägar beroende på ett villkor, exempelvis med if/else.
27
New cards
Vad är iteration (iteration)?
Att en uppsättning instruktioner upprepas, vanligtvis så länge eller tills ett visst villkor är uppfyllt.
28
New cards
En variabel pekar på ett bitmönster lagrat i minnet. Vad behöver vi veta för att tolka bitmönstret korrekt?
Vi behöver känna till variabelns datatyp eftersom datatypen bestämmer hur bitmönstret ska tolkas.
29
New cards
Vilka tre aktiviteter ingår i translation process från source program till object program?
Lexical analysis, parsing och code generation.
30
New cards
Vad gör lexical analysis i översättningsprocessen?
Den identifierar och grupperar källkodens grundläggande symboler/tokens.
31
New cards
Vad gör parsing i översättningsprocessen?
Den analyserar källkodens grammatiska/syntaktiska struktur.
32
New cards
Vad gör code generation i översättningsprocessen?
Den genererar den översatta objektkoden.
33
New cards
Ge två olika sätt att beskriva algoritmer.
Flow charts och pseudo code.
34
New cards
Vilken generation av programmeringsspråk har ett ett-till-ett-förhållande mellan språkinstruktioner och maskininstruktioner och är maskinberoende?
Andra generationens programmeringsspråk: assembly languages.
35
New cards
Vad kännetecknar andra generationens programmeringsspråk (assembly languages)?
De använder mnemoniska representationer av maskininstruktioner, har ett ett-till-ett-förhållande mellan assembly- och maskininstruktioner och är maskinberoende.
36
New cards
Vilken generation av programmeringsspråk är vanligtvis maskinoberoende och där varje primitiv motsvarar en sekvens av maskinspråksinstruktioner?
Tredje generationens programmeringsspråk (third-generation languages).
37
New cards
Vad kännetecknar tredje generationens programmeringsspråk?
De använder high-level primitives, är vanligtvis maskinoberoende och varje primitiv motsvarar en sekvens av machine-language instructions.
38
New cards
Ge två tidiga exempel på third-generation languages.
Fortran och Cobol.
39
New cards
Vad är skillnaden mellan en assembler och en compiler?
En assembler översätter assembly language till machine language, medan en compiler översätter ett högnivåspråk, exempelvis ett third-generation language, till machine language.
40
New cards
Vad är en literal i ett programmeringsspråk?
Ett värde som skrivs direkt i programkoden, exempelvis 5, 3.14 eller "hej".
41
New cards
Vad är en konstant i ett programmeringsspråk?
Ett namngivet värde som inte ska förändras under programmets exekvering.
42
New cards
Vad är skillnaden mellan en literal och en konstant?
En literal är själva värdet skrivet direkt i koden, medan en konstant är ett namn som representerar ett värde som inte ska förändras.
43
New cards
Vad är en class i object-oriented programming?
En mall (template) från vilken objekt konstrueras och som innehåller beskrivningar av både variabler och methods/functions.
44
New cards
Vad är ett object i object-oriented programming?
En aktiv programenhet som innehåller både data och kod och är en instans av en class.
45
New cards
Vilka tre egenskaper kännetecknar object-oriented programming utöver classes och objects?
Inheritance, encapsulation och polymorphism.
46
New cards
Vad innebär inheritance?
Att en class kan ärva egenskaper och beteenden från en annan class.
47
New cards
Vad innebär encapsulation?
Att data och de metoder som arbetar med datan samlas i objekt och att implementationens detaljer kan döljas bakom ett gränssnitt.
48
New cards
Vad innebär polymorphism?
Att samma gränssnitt eller operation kan användas med objekt av olika typer och ge typanpassat beteende.
49
New cards
Vad är en tråd (thread) i concurrent programming?
Ett separat exekveringsförlopp inom ett program som kan existera tillsammans med andra trådar.