100% tevredenheidsgarantie Direct beschikbaar na betaling Zowel online als in PDF Je zit nergens aan vast
logo-home
Samenvatting Diepgaande Inzichten in Assembly Language - Programming Essentials - Lesstof 4 €5,29   In winkelwagen

Samenvatting

Samenvatting Diepgaande Inzichten in Assembly Language - Programming Essentials - Lesstof 4

 3 keer bekeken  0 aankoop
  • Vak
  • Instelling

Ontdek de diepten van Assembly Language, de cryptische low-level programmeertaal verbonden met processorinstructies. Leer over assemblers die de overgang naar machinecode mogelijk maken voor efficiënte processoroperaties. Van historisch gebruik tot hedendaagse inzet, bekijk de veelzijdige toepassi...

[Meer zien]

Voorbeeld 2 van de 5  pagina's

  • 11 januari 2024
  • 5
  • 2023/2024
  • Samenvatting
avatar-seller

Beschikbare oefenvragen

Flashcards 20 Flashcards
€5,49 0 verkocht

Enkele voorbeelden uit deze set oefenvragen

1.

Wat is Assembly language en wat kenmerkt het?

Antwoord: Assembly language is de low-level programmeertaal van computers met een sterke relatie tussen instructies en de processor. Het is cryptisch, vereist kennis van de processor, en bevat eenvoudige instructies.

2.

Waarom wordt Assembly language als cryptisch beschouwd?

Antwoord: Assembly language wordt als cryptisch beschouwd vanwege de nauwkeurige opvolging van processorinstructies, de vele getallen, en het beperkte overzicht, waardoor het programmeren foutgevoelig is.

3.

Hoe kan Assembly language worden omgezet naar machinecode, en welke bestanden produceert de assembler?

Antwoord: Met behulp van een assembler kan Assembly language worden omgezet naar machinecode. De assembler produceert *.list files (met informatie over de assembly language) en *.obj files (met de uiteindelijke machinecode).

4.

Welke toepassingen had Assembly language in de geschiedenis?

Antwoord: Assembly language werd veel gebruikt in de periode 1980-1990 op computers zoals MSX, Commodore 64, Commodore Amiga, en Atari ST, waar andere talen zoals BASIC niet snel genoeg waren.

5.

Waarom wordt Assembly language nog steeds gebruikt in moderne toepassingen?

Antwoord: Assembly language wordt nog steeds gebruikt in specifieke toepassingen zoals lageniveau device drivers, embedded processoren zoals DSP, waar specifieke processorinstructies nodig zijn.

6.

Wat is het doel van een compiler in het programmeren?

Antwoord: Een compiler vertaalt programmeertalen naar machinecode, resulterend in een executable. Het maakt herhaaldelijk uitvoeren van machinecode mogelijk zonder de compiler, maar aanpassingen vereisen het aanpassen van de source code en opnieuw compileren.

7.

Wie wordt genoemd als degene die het compileren proces heeft geïntroduceerd, en welke programmeertaal is daaruit ontstaan?

Antwoord: Grace Hopper heeft het compileren proces geïntroduceerd. Hieruit ontstond de programmeertaal COBOL, nog steeds gebruikt bij overheden en financiële instanties.

8.

Wat is de rol van een parser in een compiler?

Antwoord: Een parser ontledet de grammaticale structuur van de source tekst en slaat deze op in een boomstructuur genaamd \"Concrete Syntax Tree\" (CST).

9.

Wat is een expressie in de context van programmeertalen?

Antwoord: Een expressie is een representatie van een waarde, zoals de waarde van een constante, resultaat van een berekening of vergelijking.

10.

Hoe wordt een Abstract Syntax Tree (AST) gemaakt vanuit een CST, en wat is het doel ervan?

Antwoord: Een AST wordt gemaakt vanuit een CST door overbodige informatie te verwijderen. Het is een abstracte representatie van de source tekst die handig is voor het analyseren van de code.

Programming Essentials
Assembler
Assembly language is de low level programmeertaal van computers. Er is een hele sterke
relatie tussen de assembly language en de instructies voor de processor. De assembly
language is heel cryptisch, omdat het de instructies van de processor heel nauwkeurig moet
volgen.

Assembly language bevat eenvoudige instructies. Het realiseren van complexe taken vergt
heel veel kennis. Kennis van de processor om deze complexe taken vereenvoudigd op te
schrijven.

Voor ons mensen, is assembly language een erg cryptische en beperkt aanvoelende taal.
Het programmeren is daardoor ook erg foutgevoelig. Door de cryptische omschrijvingen,
beperkte overzicht en de vele getallen die je moet invoeren zorgen ervoor dat het overzicht
snel kwijt is. Dat maakt het vinden van bugs, en die zijn er, erg lastig.

Met behulp van een assembler kan de assembly language worden omgezet naar machine
code. Doordat de assembly language heel dicht bij de taal van de processor ligt, kunnen
hele specifieke operaties worden uitgevoerd. Er kan gebruik worden gemaakt van efficiënte
opeenvolging van instructies, waardoor de uit te voeren taak supersnel door de processor
kan worden uitgevoerd.

Alle instructies krijgen van de assembler een zo genaamd effectief adres. De assembler
produceert 2 files:

● *.list file, waar veel informatie over de assembly language wordt opgeslagen, de
symbol table, geheugenadressen, etc.
● *.obj file, waar de uiteindelijke machinecode instaat. Deze file wordt later
samengesteld met eventuele andere objecten om de executable te vormen.


Toepassing
De assembly language was heel lang de taal om computers mee te programmeren. Van
1980 – 1990 op computers als de MSX, Commodore 64, Commodore Amiga, Atari ST, etc.

De BASIC taal op deze computers was domweg niet snel genoeg. Daarnaast kon er via de
BASIC taal geen optimaal gebruik worden gemaakt van de hardware.

Assembly language wordt nog steeds gebruikt voor specifieke toepassingen. Denk aan
toepassingen waarbij het gebruik van specifieke processor instructies moeten worden
gebruikt. Laag niveau device drivers, welke direct de hardware moeten aanspreken. Bij
embeded processoren, zoals "Digital Signal Processors" (DSP).


Compilers
Wanneer we een programma door een processor willen laten verwerken, dan moeten we de
taal van de processor spreken. We hebben al gezien dat we dan een instruction stream
moeten hebben om de processor ons programma uit te laten voeren.

, Om van assembly language naar machine code te komen hadden we een assembler nodig.
Deze trad op als tolk. Wanneer we in een hogere programmeertaal programmeren hebben
we een compiler nodig. De compiler is nodig om onze programmeertaal te vertalen naar
machine code.

De zogenaamde executable, dit kan ook een "Dynamic Link Library" (DLL) zijn, is voor het
uitvoeren van de machinecode niet meer afhankelijk van de compiler. We kunnen de
machinecode zo vaak starten als dat we willen, zonder dat we de compiler nodig hebben.

Wanneer het programma een ander gedrag moet krijgen of wanneer we überhaupt iets
willen wijzigen dan moeten we de source code aanpassen en het programma opnieuw
compileren. De nieuwe executable heeft dan, als alles goed is aangepast, de gewenste
aanpassing.


Geschiedenis
In het begin waren er vooral menselijke compilers. Compilers zetten source tekst om in data
die de computer kan verwerken. Vroeger waren de mensen degene die source tekst, de
formules van de engineers, etc., omzetten naar code die de computers begrepen.

Grace Hopper heeft het proces van het omzetten van source naar machinecode compileren
genoemd. Zij had als taak het programmeren van de computer. In die tijd werden computers
vrijwel alleen gebruikt voor rekenwerkzaamheden. Van engineers kreeg ze berekeningen die
moesten worden uitgevoerd. Deze programmeerde ze vervolgens in de computer. Dit werd
gedaan met een taal die zeer dicht bij de formules stond. Het zogenaamde A-0 System.

Tijdens dit werk kreeg ze langzaam het idee dat het mogelijk moest zijn om een taal die leek
op Engels om te kunnen zetten naar instructies voor de computer. Iedereen verklaarde haar
voor gek. Een computer kan toch geen tekst lezen, die is bedoeld om te rekenen.

Later heeft ze dit toch gerealiseerd. Hieruit is de programmeertaal COBOL ontstaan. Tot op
de dag van vandaag nog steeds gebruikt. Voornamelijk terug te vinden bij overheden en
financiële instanties. Echter er zijn steeds minder mensen die COBOL kunnen. Dit wordt
langzaam een probleem.

Voordelen van het kopen van samenvattingen bij Stuvia op een rij:

√  	Verzekerd van kwaliteit door reviews

√ Verzekerd van kwaliteit door reviews

Stuvia-klanten hebben meer dan 700.000 samenvattingen beoordeeld. Zo weet je zeker dat je de beste documenten koopt!

Snel en makkelijk kopen

Snel en makkelijk kopen

Je betaalt supersnel en eenmalig met iDeal, Bancontact of creditcard voor de samenvatting. Zonder lidmaatschap.

Focus op de essentie

Focus op de essentie

Samenvattingen worden geschreven voor en door anderen. Daarom zijn de samenvattingen altijd betrouwbaar en actueel. Zo kom je snel tot de kern!

Veelgestelde vragen

Wat krijg ik als ik dit document koop?

Je krijgt een PDF, die direct beschikbaar is na je aankoop. Het gekochte document is altijd, overal en oneindig toegankelijk via je profiel.

Tevredenheidsgarantie: hoe werkt dat?

Onze tevredenheidsgarantie zorgt ervoor dat je altijd een studiedocument vindt dat goed bij je past. Je vult een formulier in en onze klantenservice regelt de rest.

Van wie koop ik deze samenvatting?

Stuvia is een marktplaats, je koop dit document dus niet van ons, maar van verkoper Bryan0182. Stuvia faciliteert de betaling aan de verkoper.

Zit ik meteen vast aan een abonnement?

Nee, je koopt alleen deze samenvatting voor €5,29. Je zit daarna nergens aan vast.

Is Stuvia te vertrouwen?

4,6 sterren op Google & Trustpilot (+1000 reviews)

Afgelopen 30 dagen zijn er 73314 samenvattingen verkocht

Opgericht in 2010, al 14 jaar dé plek om samenvattingen te kopen

Start met verkopen
€5,29
  • (0)
  Kopen