Překladač jazyka C v prostředí Python

Loading...
Thumbnail Image

Date

Authors

Fiedor, Tomáš

Mark

A

Journal Title

Journal ISSN

Volume Title

Publisher

Vysoké učení technické v Brně. Fakulta informačních technologií

ORCID

Abstract

V současné době neexistuje žádné výrazné propojení problematiky tvorby překladačů a návrhu procesorů a jejich instrukčních sad ve výuce. Cílem této práce je vytvořit snadno rozšiřitelný modulární překladač, který bude umožňovat experimentovat s instrukční sadou použitého cílového procesoru. Překladač implementuje několik optimalizačních technik, jejichž vliv je v práci diskutován. Jednou z pokročilejších použitých technik je kontextové generování cílového kódu, které vykazuje mnohem lepší metriky výsledného kódu v porovnání s prostým slepým generování.
There is currently no big link between creation of compilers and processor design and their instruction sets in courses. The goal of this work is to create easily extensible and modular compiler, which will enable experiments with instruction sets of used target processor. Compiler implements several optimization techniques. Their impact is more closely discussed. One of the advanced used techniques is context generation of output code. This technique generates less code than common blind generation.

Description

Citation

FIEDOR, T. Překladač jazyka C v prostředí Python [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2012.

Document type

Document version

Date of access to the full text

Language of document

cs

Study field

Informační technologie

Comittee

prof. RNDr. Alexandr Meduna, CSc. (předseda) doc. Ing. Josef Schwarz, CSc. (místopředseda) Ing. Vladimír Bartík, Ph.D. (člen) Ing. Aleš Smrčka, Ph.D. (člen) doc. Ing. Michal Španěl, Ph.D. (člen)

Date of acceptance

2012-06-13

Defence

Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se pak seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázky oponenta a na další otázky přítomných. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm A. Otázky u obhajoby: Co přesně je myšleno cyklem v jednotce s/cyklus v tabulce 3.1 na str. 11? V čem by spočívaly potřebné modifikace překladače při změně cílové platformy (procesoru/instrukční sady)? Jaká omezení/specifika z pohledu navrženého překladače má procesor implementovaný v FPGA ve srovnání s běžným MCU? Např. z pohledu práce s I/O porty, periferiemi atd. Čím je způsobeno, že v některých případech vychází počet instrukcí optimalizovaného kódu assembleru větší než počet instrukcí bez optimalizací v tabulce 6.1 na str. 37?

Result of defence

práce byla úspěšně obhájena

DOI

Collections

Endorsement

Review

Supplemented By

Referenced By

Citace PRO