Not logged in. · Lost password · Register

Robert
(Administrator)
Avatar
Member since Nov 2002
559 posts
Subject: Klausur 904
Um das hier mal fortzuführen :-)   [alle angaben ohne gewähr...]

Aufgabe 1

a) 3, 4, 5, 6

b) zeitkritische Stellen, Benutzung von Ressourcen (zB lesen von Tastaturpuffer...)

c) carry = übertrag
    zero = wenn ergebnis null ist
    negative = wenn ergebnis negativ ist
   iterrupt = ob interrupts zugelassen werden



Aufgabe 2

a) struct foo {
         char c
         signed word i
         int n
    }
   Byte Order ist Little Endian

b) Öhm, weil hmm... Vielleicht weil die Byte Order zB bei Netzwerkgeschichten wichtig ist und der Programmierer Acht geben muss, aber die BitOrder nur auf Hardware Ebene interessant ist und dem Programmierer verborgen bleibt? Hab aber keine Ahnung...

c) is_big_endian:  (kein plan ob das geht...)
   movb $1, %al     
   andw $1, %ax
   ret     //ergebnis steht in %eax



Aufgabe 3:

a) 01111111 11111111 11111111 11111111 = 0x7f ff ff ff
  Bedeutung? Keine Ahnung, vielleicht die max. darstellbare signed int Zahl?

b) movl 4(%esp), %eax
     andl $1, %eax
     ret

c) int test(int n) {
             int i = 0;
 loop:   int tmp = n;
             tmp = tmp * tmp;
             if (i = tmp) return -1;
             tmp = i;
             tmp = tmp * tmp;
             tmp = tmp + n;
             tmp = func(tmp);
             if (tmp= 1)
                return i
             else
             i = i+1;
             goto loop;
      }
(Keine Ahnung, ob es das ist was die wollen...)




Aufgabe 4:

a)
         .align 4
isqrt: .globl isqrt
         movl 4(%esp), %ecx <=
         xorl   %edx, %edx
         cmpl %ecx, %edx
         jae .L4
         .align 4
.L5:
        incl %edx   <=
        movl %edx, %eax
        imull %eax, %eax
        cmpl %ecx,  %eax   <=
         jb .L5
.L4:  movl %edx, %eax <=
          ret

b) vielleicht so eine Art Code Alignment? zB das .L5 an einer  durch vier teilbaren Stelle steht, weil da immer wieder hingesprungen werden muss?

c) Speicherbedarf:   34? Aber wie immer, hab keine Ahnung, im Skript steht da ja nicht sonderlich viel dazu, vielleicht kann mir das ja mal jmd. erklären...

d) keine ahnung, vielleicht hat der Programmierer vergessen, dass er auch call benutzen könnte... Was bedeutet überhaupt ".word"?



Aufgabe 5)

addierer mit einer festverlöteten 1 :-)
Ummm, yeah. We couldn't run an ad that said no Portuguese, but ummm... no Portuguese!
Close Smaller – Larger + Reply to this post:
Verification code: VeriCode Please enter the word from the image into the text field below. (Type the letters only, lower case is okay.)
Smileys: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O
Special characters:
Go to forum
Datenschutz | Kontakt
Powered by the Unclassified NewsBoard software, 20150713-dev, © 2003-2011 by Yves Goergen