Der Maschinencode einer Grafikfunktion

thorsten1967

New member
4 November 2009
3
1
Hallo,bin der Thorsten und mache ein Fernlehrgang zum PC Techniker

Kann mir einer von euch bitte auf die Sprünge helfen?
Ich bekomme einfach keine Lösung zu der Frage, stehe geistlich wohl vor einer Wand...

Frage lautet:

Der Maschinencode einer Grafikfunktion ist 22 311 Bytes lang. Im Anwendungsprogramm
wird sie 38 mal verwendet. Wie viel Speicherplatz wird in der Anwendung für diese
Funktion insgesamt belegt, wenn sie folgendermaßen aufgerufen wird:
a) als Unterprogramm,
b) als Inline-Code (oder Makro).
Ein Unterprogrammaufruf soll jeweils acht Bytes belegen.


weiss nicht ob ich hier richtig bin

mein Vorschlag

Unterprogramm=38Aufrufe X 8 Bytes = 304 Bytes
Inline-Code(oder Macro) 38Aufrufe X 8 Bytes = 304 Bytes
in der Anwendung 38 mal verwendet 38 X 22311 Bytes = 847818 Bytes

wir brauchen
=848426 Bytes =

wäre net muss ja nich die komplette lösung sein aber bitte mal nen richtigen Hinweis für den AHA effeckt

danke schon mal im voraus

gruß
 
Sieht nicht sooo ganz richtig aus.

Eigentlich sind's ja auch zwei Fragen.


A) Wieviel Speicherplatz wird belegt, wenn die Grafikfunktion 38mal als Unterprogramm aufgerufen wird ?

B) Wieviel Speicherplatz wird belegt, wenn die Grafikfunktion 38mal als Inlinecode implementiert ist


also hast Du zwei unterschiedliche Zahlen als Ergebnis
 
so habe mal so geschrieben

Da der Maschinen Code 38 mal verwendet wird kommen wir da auf 847818 Bytes.
zu a) das Unterprogramm benutz 8 Bytes an Speicher
zu b) da die Grafikfunktion 38 mal verwendet wird, wirt der Inline Code auch 38 mal neu geschrieben das heißt 38x8= 304 Bytes also brauch wir
847818 + 8 + 304 = 848130 Bytes

an speicher
 
Wie sieht der Code denn aus ?

A) Wieviel Speicherplatz wird belegt, wenn die Grafikfunktion 38mal als Unterprogramm aufgerufen wird ?

Code Hauptprogramm
CALL Grafikfunktion
weiterer Code Hauptprogramm
CALL Grafikfunktion
weiterer Code Hauptprogramm
...
Code Grafikfunktion


Du hast 38mal den Call der Grafikfunktion und brauchst einmal den Code der Funktion

Benötigter Speicher = 38 * 8 + 22.311 = 22.615 Bytes





B) Wieviel Speicherplatz wird belegt, wenn die Grafikfunktion 38mal als Inlinecode implementiert ist

Code Hauptprogramm
Inlinecode Grafikfunktion
weiterer Code Hauptprogramm
Inlinecode Grafikfunktion
weiterer Code Hauptprogramm
...

Benötigter Speicher: 38 * 22.311 = 847.818 Bytes