matheraum.de
Raum für Mathematik
Offene Informations- und Nachhilfegemeinschaft

Für Schüler, Studenten, Lehrer, Mathematik-Interessierte.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Forenbaum
^ Forenbaum
Status Hochschulmathe
  Status Uni-Analysis
    Status Reelle Analysis
    Status UKomplx
    Status Uni-Kompl. Analysis
    Status Differentialgl.
    Status Maß/Integrat-Theorie
    Status Funktionalanalysis
    Status Transformationen
    Status UAnaSon
  Status Uni-Lin. Algebra
    Status Abbildungen
    Status ULinAGS
    Status Matrizen
    Status Determinanten
    Status Eigenwerte
    Status Skalarprodukte
    Status Moduln/Vektorraum
    Status Sonstiges
  Status Algebra+Zahlentheo.
    Status Algebra
    Status Zahlentheorie
  Status Diskrete Mathematik
    Status Diskrete Optimierung
    Status Graphentheorie
    Status Operations Research
    Status Relationen
  Status Fachdidaktik
  Status Finanz+Versicherung
    Status Uni-Finanzmathematik
    Status Uni-Versicherungsmat
  Status Logik+Mengenlehre
    Status Logik
    Status Mengenlehre
  Status Numerik
    Status Lin. Gleich.-systeme
    Status Nichtlineare Gleich.
    Status Interpol.+Approx.
    Status Integr.+Differenz.
    Status Eigenwertprobleme
    Status DGL
  Status Uni-Stochastik
    Status Kombinatorik
    Status math. Statistik
    Status Statistik (Anwend.)
    Status stoch. Analysis
    Status stoch. Prozesse
    Status Wahrscheinlichkeitstheorie
  Status Topologie+Geometrie
  Status Uni-Sonstiges

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
StartseiteMatheForenAssemblerprogramm kommentieren
Foren für weitere Schulfächer findest Du auf www.vorhilfe.de z.B. Geschichte • Erdkunde • Sozialwissenschaften • Politik/Wirtschaft
Forum "Assembler" - programm kommentieren
programm kommentieren < Assembler < Programmiersprachen < Praxis < Informatik < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Assembler"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

programm kommentieren: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 14:19 Mo 26.07.2010
Autor: sal123

Analysieren Sie folgendes Assembler Programm. Kommentieren Sie das Programm ausführlich und beschreiben Sie seine Funktion !

00000000 MOV AX,0001
00000003 MOV BX ,0002
00000006 MOV CX ,0003
00000009 MOV DX ,0004
0000000C MOV SI , 0005
0000000F MOV DI , 0006
00000012 INC AX
00000013 ADD BX,02
00000016 SAL CX
00000018 OR DX,CX
0000001A ADD SI,BX
0000001C XOR DI,CX
0000001E JMP 0E
END
Hoffe das jemand in der Lage ist mir weiter zu helfen !!!!!!

Liebe Grüße  
sal123


        
Bezug
programm kommentieren: Antwort
Status: (Antwort) fertig Status 
Datum: 15:01 Mo 26.07.2010
Autor: felixf

Moin!

> Analysieren Sie folgendes Assembler Programm. Kommentieren
> Sie das Programm ausführlich und beschreiben Sie seine
> Funktion !
>
> 00000000 MOV AX,0001
>  00000003 MOV BX ,0002
>  00000006 MOV CX ,0003
>  00000009 MOV DX ,0004
>  0000000C MOV SI , 0005
>  0000000F MOV DI , 0006
>  00000012 INC AX
>  00000013 ADD BX,02
>  00000016 SAL CX
>  00000018 OR DX,CX
>  0000001A ADD SI,BX
>  0000001C XOR DI,CX
>  0000001E JMP 0E
>  END
>
>   Hoffe das jemand in der Lage ist mir weiter zu helfen
> !!!!!!

Nun, du wirst doch zumindest bei ein paar der Befehle wissen, was sie tun. Zum Beispiel ganz vorne. Schreib doch erstmal auf, was jeder Befehl genau tut. (Du wirst sicher eine Referenz haben in der du das nachschauen kannst, z.B. in der Vorlesung.)

Dann arbeite das Programm Schritt fuer Schritt ab und schau, was passiert (vor allen mit den Registern). Versuche daraus eine Idee zu bekommen, was es tut.

So, und nun bist du dran. Leg mal los.

LG Felix


Bezug
                
Bezug
programm kommentieren: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 17:32 Mo 26.07.2010
Autor: sal123

00000000 MOV AX,0001   // in das  prozessorregister  Ax den wert 0001 kopierte .der register A x steht an der stelle 00000000
>  00000003 MOV BX ,0002 // in das prozessorregister Bx den wert 0010 kopierte
>  00000006 MOV CX ,0003 //in das prozessorregister  cx den wert 0011 kopierte
>  00000009 MOV DX ,0004 //                                             dx den wert 0100 kopierte
>  0000000C MOV SI , 0005 //                                             S i den wert 0101 kopierte
>  0000000F MOV DI , 0006 //                                             di den wert 0110 kopierte
>  00000012 INC AX               //    0001+1=0010
>  00000013 ADD BX,02 //    0010+0010=0100
>  00000016 SAL CX
>  00000018 OR DX,CX
>  0000001A ADD SI,BX
>  0000001C XOR DI,CX
>  0000001E JMP 0E
>  END

Mehre weisse ich leider nicht.Hoffe das jemand in der Lage ist mir weiter zu helfen !!!!!! Liebe Grüße
sal123

Bezug
                        
Bezug
programm kommentieren: Antwort
Status: (Antwort) fertig Status 
Datum: 22:20 Mo 26.07.2010
Autor: felixf

Moin!

> 00000000 MOV AX,0001   // in das  prozessorregister  Ax den
> wert 0001 kopierte .der register A x steht an der stelle
> 00000000

Das ist doch Quark! Der Befehl steht im Speicher an der (relativen?) Adresse 00000000. Das Register AX befindet sich auf der CPU und hat keine Adresse im Speicher!

Genauer: an der Adresse 00000000 im Programmcode wird dem Register der Wert 1 zugewiesen.

> >  00000003 MOV BX ,0002 // in das prozessorregister Bx den

> wert 0010 kopierte
> >  00000006 MOV CX ,0003 //in das prozessorregister  cx den

> wert 0011 kopierte
> >  00000009 MOV DX ,0004 //                                  

>           dx den wert 0100 kopierte
> >  0000000C MOV SI , 0005 //                                  

>            S i den wert 0101 kopierte
> >  0000000F MOV DI , 0006 //                                  

>            di den wert 0110 kopierte

Kannst du sowas nicht besser aufschreiben, oder gibst du dir einfach keine Muehe?

> >  00000012 INC AX               //    0001+1=0010

> >  00000013 ADD BX,02 //    0010+0010=0100

> >  00000016 SAL CX

Falls du nicht weisst, was SAL ist: guck []hier.

> >  0000001E JMP 0E

Um etwas ueber diese Zeile sagen zu koennen muesste man mehr ueber den verwendeten Assembler und die Ziel-CPU kennen. Ist 0E eine relative Adresse? Eine absolute Adresse (macht keinen Sinn, falls es sich auf die angegebenen Adressen bezieht)? Oder etwas ganz anderes?

LG Felix


Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Assembler"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.unimatheforum.de
[ Startseite | Forum | Wissen | Kurse | Mitglieder | Team | Impressum ]