KWARTAAL: 2de Kwartaal
WEEK: 4
KLAS: SS 1
DATUM:
VAK: Rekenaarwetenskap
ONDERWERP: Vertalers
Inleiding
Vertalers is hoogs ontwikkelde programme wat in staat is om hoëvlaktaal na masjientaal, laevlaktaal na masjientaal om te skakel. 'n Vertaler is 'n rekenaarprogram wat die vertaling uitvoer van 'n program wat in 'n gegewe programmeertaal geskryf is na 'n funksioneel ekwivalente program in 'n ander rekenaartaal , sonder om die funksionele of logiese struktuur van die oorspronklike kode (die "essensie" van elke program) te verloor. .
Soorte vertalers
- Samesteller
- Samesteller
- Tolk
- As die vertaler 'n hoëvlaktaal in 'n ander hoëvlaktaal vertaal, word dit 'n vertaler of bron-tot-bronsamesteller genoem. Voorbeelde sluit in Haxe, FORTRAN-na-Ada-vertalers, CHILL-na-C++-vertalers, PASCAL-na-C-vertalers, COBOL (DialectA)-na-COBOL(DialectB)-vertalers.
- As die vertaler 'n hoëvlaktaal in 'n laervlaktaal vertaal, word dit 'n samesteller genoem. Let daarop dat elke taal óf vertaal kan word in 'n (Turing-volledige) hoëvlak- óf samestellende taal.
- As die vertaler 'n hoëvlaktaal in 'n intermediêre kode vertaal wat onmiddellik uitgevoer sal word, word dit 'n tolk genoem.
- As die vertaler teiken-/masjienkode na brontaal vertaal, word dit 'n dekompileerder genoem. Voorbeeld: DCC, Boomerang Decompilers en Reverse Engineering Compiler (REC).
- As die vertaler samestellingstaal na masjienkode vertaal, word dit 'n samesteller genoem. Voorbeelde sluit in MASM, TASM en NASM.
- As die vertaler masjienkode in samestellingstaal vertaal, word dit 'n disassembler genoem. Voorbeelde sluit in gdb, IDA Pro en OllyDbg.
- Vertalers wat van 'n mensleesbare ontwerp wat in terme van reëls en hoëvlakfunksies gespesifiseer word, vertaal na die ekwivalente logiese hekke en skyfie-uitleg wat nodig is om die vervaardiging daarvan te bereik, behoort aan elektroniese ontwerpoutomatisering en hardewarebeskrywingtaalkategorieë.
- Assembler : Dit is 'n vertaler wat in staat is om laevlaktaal direk na masjientaal om te skakel. 'n Samesteller vertaal samestellingstaal in masjienkode. Byeenkomstaal bestaan uit mnemonics vir masjienopkodes, sodat samestellers 'n 1:1-vertaling van mnemoniese na 'n direkte instruksie uitvoer.
Byvoorbeeld: LDA #4 skakel om na 0001001000100100
Voordele van die gebruik van 'n Assembler:
Baie vinnig in die vertaling van samestellingstaal na masjienkode as 1 tot 1 verhouding
Samestellingkode is dikwels baie doeltreffend (en dus vinnig) omdat dit 'n laevlaktaal is
Die samestellingskode is redelik maklik om te verstaan as gevolg van die gebruik van Engels-agtige mnemonics
Nadele van die gebruik van Assembler:
Samesteltaal word vir 'n sekere instruksiestel en/of verwerker geskryf
Samestelling is geneig om geoptimaliseer te word vir die hardeware waarvoor dit ontwerp is, wat beteken dat dit dikwels onverenigbaar is met verskillende hardeware
Baie samestellingkode is nodig om relatief eenvoudige take te doen, en komplekse programme verg baie programmeringstyd
- Vertaler : Dit is 'n vertaler wat in staat is om hoëvlaktaal direk na masjientaal om te skakel. 'n Samesteller is 'n rekenaarprogram wat kode wat in 'n hoëvlaktaal geskryf is, vertaal na 'n laervlaktaal, objek/masjienkode. Die mees algemene rede vir die vertaling van bronkode is om 'n uitvoerbare program te skep (omskakeling van 'n hoëvlaktaal na masjientaal).
Voordele van die gebruik van 'n samesteller
Bronkode is nie ingesluit nie, daarom is saamgestelde kode veiliger as geïnterpreteerde kode
Is geneig om vinniger kode te produseer as om bronkode te interpreteer
Produseer 'n uitvoerbare lêer, en daarom kan die program uitgevoer word sonder dat die bronkode nodig is
Nadele van die gebruik van 'n samesteller
Voorwerpkode moet geproduseer word voor 'n finale uitvoerbare lêer, dit kan 'n stadige proses wees
Die bronkode moet 100% korrek wees vir die uitvoerbare lêer om geproduseer te word
- Tolk : 'n Tolkprogram voer ander programme direk uit, loop deur programkode en voer dit reël-vir-reël uit. Aangesien dit elke reël ontleed, is 'n tolk stadiger as om saamgestelde kode uit te voer, maar dit kan minder tyd neem om programkode te interpreteer as om dit saam te stel en dan te laat loop - dit is baie nuttig wanneer kode prototipeer en getoets word. Tolke word vir veelvuldige platforms geskryf, dit beteken dat kode wat een keer geskryf is, onmiddellik op verskillende stelsels uitgevoer kan word sonder om vir elkeen weer saam te stel. Voorbeelde hiervan sluit in flitsgebaseerde webprogramme wat op jou rekenaar, MAC, speletjiekonsole en selfoon sal loop.
Voordele van die gebruik van 'n tolk
Makliker om te ontfout (kontroleer foute) as 'n samesteller
Makliker om multi-platform-kode te skep, aangesien elke verskillende platform 'n tolk sal hê om dieselfde kode uit te voer
Nuttig vir prototipering van sagteware en die toets van basiese programlogika
Nadele van die gebruik van 'n tolk
Bronkode word benodig vir die program om uitgevoer te word, en hierdie bronkode kan gelees word wat dit onseker maak
Tolke is oor die algemeen stadiger as saamgestelde programme as gevolg van die per-reël vertaalmetode
Stadiums van programmering
Daar is ses stadiums in die ontwikkeling van 'n goeie program.
- Program analise
- Program ontwerp
- Program kodering
- Programverifikasie
- Program dokumentasie
- Program instandhouding
Vloeidiagram : Dit is die prentjie- of grafiese voorstelling van stappe in die skryf van 'n program.
![](https://lessonotesimages.fra1.cdn.digitaloceanspaces.com/content/SS1CS2_WK4_1.png)
Vloeidiagram
'n Logaritme is die stap-vir-stap prosedure om 'n probleem of taak op te los
Basiese programmeertaal
Die programmeertaal moet die volgende basiese beginsels hê
- Taalsintaksis : Dit behels kodes wat deur die rekenaarsamesteller van die rekenaartaal verstaan word. Voorbeeld "20" is 'n Hausa-sintaksis. Samesteller het sy eie sintaksis en dit sluit in
- Druk
- REM
- Invoer
- Uitset
- Tab
- Veranderlike : Ook bekend as identifiseerder, wat 'n bekende of onbekende hoeveelheid inligting bevat waarna verwys word as 'n waarde.
- Konstant : Dit is data-items wat nie verander tydens programuitvoering nie.
Voorbeelde sluit in:
1, 2, 3 ……..
A, B, C, .....
- Operator : Dit kan rekenkundig, relasioneel of logika wees.
Voorbeelde:
Rekenkundige operateurs sluit in (rekentaal)
+ = optelling
– = aftrekking
x = vermenigvuldiging
/ = verdeling
؈ of ** = Eksponent
Relasionele operateurs sluit in
= vir gelykheid
> = groter as
< = minder as
≤ = minder as of gelyk aan
≥ = groter as of gelyk aan
Logiese bewerkings
Waar of onwaar
Ja of nee
OF of EN
Elke program moet hê
- Begin
- Einde
- Liggaam
ASSESSERING
- ____ skakel hoëvlak- of laevlaktaal om na masjientaal
(a) sender
(b) vertaler
(c) oordraer
(d) transducer - Een hiervan is nie 'n soort vertaler nie
(a) samesteller
(b) samesteller
(c) tolk
(d) silikon - As die vertaler teiken-/masjienkode na brontaal vertaal, word dit 'n genoem
(a) masjineerder
(b) taalkundige
(c) desamesteller
(d) opeenhoping - ______ is in staat om hoëvlaktaal direk na masjientaal om te skakel.
(a) samesteller
(b) samesteller
(c) tolk
(d) silikon - Hoeveel stadiums is betrokke by die ontwikkeling van 'n goeie program.
(a) 4
(b) 5
(c) 6
(d) 7
ANTWOORDE
- a
- d
- c
- a
- c