Pascal Programm in C übersetzen

Gast #1029773
Lesenswert?

Hallo, ich hatte mal ein Problem mit einem Router und mir wurde hier 
geholfen. Und nun habe ich noch ein Problem. Ich kenne mich überhaupt 
nicht mit Pascal aus, muss das aber für meine Semesterarbeit machen. 
Helft mir Bitte!

Hier wäre das Programm:


PROGRAM AD_Wandler_Abfrage;

USES Crt;

TYPE typLPT             = RECORD
                            Dat, Stat, Steu : Word;
                          END;
VAR LPT : typLPT;
    I   : Byte;
    AD  : Byte;

PROCEDURE OPort(PortAddr : Word; DataByte : Byte); ASSEMBLER;
ASM
  MOV AL, DataByte
  MOV DX, PortAddr
  OUT DX, AL
END;

FUNCTION IPort(PortAddr : Word) : Byte; ASSEMBLER;
ASM
  MOV DX, PortAddr
  IN  AL, DX
END;

PROCEDURE PortInit;
BEGIN
  OPort(LPT.Dat,  $00);
  OPort(LPT.Stat, $00);
  OPort(LPT.Steu, $00);
END;

BEGIN
  LPT.Dat  := MemW[$0040:$0008];  { Einlesen der Parallel-Port-Nummer }
  LPT.Stat := LPT.Dat + 1;
  LPT.Steu := LPT.Dat + 2;

  PortInit; { Ports resetten }

  OPort(LPT.Dat, $01); { D0 auf 1 (Stromversorgung an) }

  REPEAT
    OPort(LPT.Steu, $00); { CS auf 0, IO auf 0 }
    OPort(LPT.Steu, $02); { CS auf 1, IO auf 0 }

    AD := 0; { alten Wandlerwert loeschen }

    FOR I := 7 DOWNTO 0 DO { Bit-Werte auslesen }
    BEGIN
      AD := AD SHL 1;
      IF IPort(LPT.Stat) AND $08 = $08 THEN
      BEGIN
        AD := AD OR 1;
        Write(1);
      END ELSE Write(0);

      OPort(LPT.Steu, $06); { CS auf 1, IO auf 1 }
      OPort(LPT.Steu, $02); { CS auf 1, IO auf 0 }
    END;

    WriteLn(AD:10);
    Delay(250); { etwas warten ... }

  UNTIL KeyPressed;

  ReadKey;
  PortInit; { Ports resetten }
END.
Persönliche Seite #1029780
Lesenswert?

Also wenn ich mir das Programm so anschaue würde ich sagen, dass es 
reicht wenn du C kannst...

BEGIN
...
END

=

{
...
}

Function = Funktion mit Rückgabeparameter
Procedure= Funktion ohne Rückgabewert

repeat
...
until

=

while() oder do {} while()

for-schleife in pascal ist wie for-schleife in C nur andere Syntax...

Und ein bisschen in einem Handbuch der Pascalprogrammierung stöbern kann 
ja nicht so schwer sein...

gruß reiner
Gast #1029798
Lesenswert?

Anthony wrote:

> Hallo, ich hatte mal ein Problem mit einem Router und mir wurde hier
> geholfen. Und nun habe ich noch ein Problem. Ich kenne mich überhaupt
> nicht mit Pascal aus, muss das aber für meine Semesterarbeit machen.

Es ist DEINE Semesterarbeit. Ist dir eigentlich klar, dass du dein 
ganzes Studium mit sowas riskierst?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren