Program Zgromadzenia Symbolicznego

Symbolic Assembly Program (SAP) to program asemblera dla komputera IBM 704 . Został napisany przez Roya Nutta z United Aircraft Corporation i był rozpowszechniany przez grupę użytkowników SHARE od 1956 roku jako Share Assembly Program . SAP zastąpił wcześniejszy program o nazwie NYAP1 (New York Assembly Program 1), który bardzo przypominał, i stał się standardowym asemblerem dla 704 użytkowników. „Ustanowił zewnętrzną formę języka asemblera, który miał być wzorem dla wszystkich jego następców i który przetrwał prawie niezmieniony do dnia dzisiejszego”.

DARSIMCO , skrót od Dartmouth Simplified Code , był prostym językiem programowania napisanym przez Johna Kemeny'ego (który później współtworzył BASIC ) w 1956 roku, który rozszerzył proste operacje matematyczne do programu, który następnie został złożony przez SAP.

Opis

SAP jest asemblerem dwuprzebiegowym . Jest w stanie działać na 704 z co najmniej 4 K 36-bitowymi słowami pamięci rdzenia. Ta konfiguracja pozwala na maksymalnie 1097 wpisów w tablicy symboli . Dodatkowa pamięć rdzenia powyżej 4 KW może być wykorzystana do wprowadzenia dodatkowych wpisów w tablicy symboli.

Wejście i wyjście dla SAP odbywa się za pomocą kart dziurkowanych lub obrazów kart na taśmie. Wejście jest w ustalonym formacie.

Format wejściowy

Kolumny kart Opis
1-6 etykieta lub puste
7 pusty
8-10 kod operacji (3 znaki) lub puste
11 pusty
12-72 pole zmienne
73-80 nie używany przez asemblera. Może zawierać informacje identyfikacyjne i sekwencyjne

Format wyjściowy

Dane wyjściowe składają się z bezwzględnych lub ruchomych kart perforowanych lub obrazów kart. Dane wyjściowe to dane binarne w dwunastu rzędach kart 12, 11 i 0–9. Każdy wiersz zawiera dwa 36-bitowe słowa w kolumnach 1-36 i 37-72, oznaczone odpowiednio jako lewy (L) i prawy (R). Dane są zwykle numerowane według wierszy i pozycji, na przykład kolumny od 1 do 36 w wierszu 9 są oznaczone jako 9L, kolumny od 37 do 72 w tym samym wierszu to 9R. W słowie bity są oznaczone, od lewej do prawej, jako S (bit znaku) i 1-35, tak więc pozycja bitowa 13 lewego słowa w rzędzie 6 jest oznaczona jako 6L13.

Słowo 9L każdej karty jest słowem kontrolnym, a 9R jest opcjonalną sumą kontrolną . Słowo kontrolne zawiera bity wskazujące na przykład, czy dane na karcie są bezwzględne czy przenośne, czy obecna jest suma kontrolna, bezwzględne lub nominalne położenie danych na tej karcie oraz liczbę słów danych zawartych na tej karcie.

Linki zewnętrzne