File DEC434.PS

Directory of image this file is from
This file as a plain text file

PROGRAM ZAHLUMWANDLUNG (IN,OUT);
TYPE
  FELD=ARRAY [0..11] OF INTEGER;
VAR
  REGISTER:FELD;
  I,ZAHL:INTEGER;
  MODUS:CHAR;

PROCEDUR EINGABE(VAR REGISTER:FELD);
VAR
  I:INTEGER;
BEGIN
  WRITELN("GEBEN SIE DIE DUAL-ZAHL EIN !");
  READLN;
  FOR I:=0 TO 11 DO READ(REGISTER[I]);
END;

PROCEDUR AUSGABE(VAR REGISTER:FELD);
VAR
  I:INTEGER;
BEGIN
  WRITELN("DIE ZAHL IM BINAERSYSTEM:");
  FOR I:=0 TO 11 DO WRITE(REGISTER[I]:1);
  WRITELN;
END;

PROCEDUR DECDUAL(ZAHL:INTEGER);
VAR
  REST,I:INTEGER;
BEGIN
  IF ZAHL<0 THEN ZAHL:=ZAHL+4096;
  FOR I:=11 DOWNTO 0 DO BEGIN REST:=ZAHL MOD 2;
                              ZAHL:=ZAHL DIV 2;
                              REGISTER[I]:=REST;
                        END;
  AUSGABE(REGISTER);
END;

PROCEDUR DUALDEC(VAR REGISTER:FELD);
VAR
  I:INTEGER;
BEGIN
  ZAHL:=0;
  FOR I:=0 TO 11 DO ZAHL:=ZAHL*2+REGISTER[I];
  ZAHL:=ZAHL MOD 4096;
  IF ZAHL>2047 THEN ZAHL:=ZAHL-4096;
  WRITELN("DIE ZAHL IM ZEHNERSYSTEM:",ZAHL:5);
END;

(*========== Hauptprogramm ==========*)
BEGIN
  REPEAT WRITELN("IN WELCHEN MODUS MOECHTEN SIE");
         WRITE("DEC->DUAL(1) ODER DUAL->DEC(2) BEI 'E' ENDE");READLN;READ(MODUS);
         IF MODUS="1" THEN BEGIN WRITE("DEZIMALZAHL");READLN;READ(ZAHL);DECDUAL(ZAHL);END
            ELSE IF MODUS="2" THEN BEGIN EINGABE(REGISTER);DUALDEC(REGISTER);END;
  WRITELN;
  UNTIL  MODUS="E";
END.



Feel free to contact me, David Gesswein djg@pdp8online.com with any questions, comments on the web site, or if you have related equipment, documentation, software etc. you are willing to part with.  I am interested in anything PDP-8 related, computers, peripherals used with them, DEC or third party, or documentation. 

PDP-8 Home Page   PDP-8 Site Map   PDP-8 Site Search