Elektronik D3-28

Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från versionen som granskades den 22 maj 2020; kontroller kräver 7 redigeringar .

Electronics D3-28  är en specialiserad stationär kontroll- och datorenhet som upptar en mellanposition mellan persondatorer och programmerbara miniräknare .

Skapad på grundval av Electronics C50 (15VSM-5)-maskinen, där den programmerbara miniräknaren Wang 700 [1] var prototypen . Den har ett inbyggt tangentbord (numeriska och funktionstangenter), en tvåraders display på sjusegmentsindikatorer (12 mantissa siffror, två graders siffror och två teckenindikatorer i varje rad) och en magnetisk bandenhet (NML) i standard ljudkassetter .

Den är också utrustad med IRPR- och IRPS- gränssnitt (i form av en PEL2.240.001-matchningsenhet), till vilken en skrivare och en alfanumerisk terminal vanligtvis var anslutna (vanligtvis modellerna 15IE-00-013 ).

Versioner

Den första D3-28-serien hade firmware lagrad i skrivskyddade minnesenheter (ROM) på en matris av ferrit hopfällbara U-formade kärnor gjorda av magnetiskt mjuk ferrit manuellt sydd med en tunn tråd). I efterföljande serier utfördes ROM på integrerade kretsar.

I vissa testkopior av maskinerna installerades ROM-skivor med firmware i sockets; det fanns speciell firmware för dessa ROM för att använda enheter som en del av specialiserade datorsystem.

Under produktionen av D3-28 förbättrades den interna arkitekturen och mjukvaran med tillägg av nya kommandon. Generationerna D3-28 (i enlighet med bruksanvisningen) är indelade i "utgiven före oktober 1979", efter detta datum och "efter 1983".

D3-28 16K (15VM16)

16 kilobyte RAM (mikrokretsar i de första utgåvorna - K565RU1 , i efterföljande - K565RU3 och K565RU6 ).

Utåt skilde det sig också i den röda färgen på indikatorernas glöd och färgen på plexiglasplattan som täcker dem. Efterföljande modeller hade orange siffror under ett grönt filter.

D3-28 32K (15VM32)

Utrustad med 32 kilobyte RAM, gjord på 565RU6 mikrokretsar.

D3-28 128K (15VM128)

Utrustad med 128 kilobyte RAM, gjord på 565RU5 mikrokretsar.

Beroende på version (kodad som xxx i beteckningen 15VM128-xxx), hade D3-28 möjlighet att ansluta till fotoläsare (SP-3 och FS-1501), tejpstansare (PL-150M), skrivare (till exempel, Consul 256, Consul 260), specialblock för anslutning av monitorer av typen 15IE-00-013, samt möjligheten att ansluta fjärrkontrollenheter D3-28. Genom att ansluta skrivarenheten på Consul-skrivmaskinerna och monitorn förvandlades D3-28 till en persondator.

Det var möjligt att ladda ner och automatiskt starta programmet via gränssnittet när maskinen slogs på.

Arkitektur och kommandosystem

Kommandosystem

För Electronics D3-28 med ett RAM-minne på 32 K, kodas kommandona för det maskinorienterade språket D3-28 med två eller fyra hexadecimala siffror.

En uppsättning kommandon baserade på KOI-7 (uppsättning 2) i form av ryskspråkiga kommandon och en maskinell 4-siffrig hexadecimal kod för elektroniken i DZ-28-datorn visas i tabellen. Raderna i tabellen är de höga 4 bitarna i koden, kolumnerna är de låga bitarna.

.0 .ett .2 .3 .fyra .5 .6 .7 .åtta .9 .A .B .C .D .E .F
 
0.
 
PUS
00 00
NC
00 01
NT
00 02
KT
00 03
KP
00 04
KTM
00 05
JA
00 06
SW
00 07
VS
00 08
GT
00 09
PS
00 10
Tis
00 11
PF
00 12
VK
00 13
EXIT
00 14
BX
00 15
 
ett.
 
AP1
01 00
(SS1)
01 01
(SS2)
01 02
(SS3)
01 03
STP
01 04
NO
01 05
BLÅ
01 06
KB
01 07
AN
01 08
KN
01 09
ZM
01 10
AR2
01 11
RF
01 12
WP
01 13
RZ
01 14
RE
01 15
 
2.
 
SPACE
02 00
!
02 01

02 02
#
0203
¤
02 04
%
0205
&
02 06
02
07
(
02 08
)
02 09
*
02 10
+
02 11
'02
12
-
02 13
.
02 14
/
02 15
 
3.
 
0
03 00
1
03 01
2
03 02
3
03 03
4
03 04
5
03 05
6
03 06
7
03 07
8
03 08
9
03 09
:
03 10
;
03 11
<
03 12
{{{2}}}
03 13
>
03 14
?
03 15
 
fyra.
 
@
04 00
A
04 01
B
04 02
C
04 03
D
04 04
E
04 05
F
04 06
G
04 07
H
04 08
I
04 09
J
04 10
K
04 11
L
04 12
M
04 13
N
04 14
O
04 15
 
5.
 
P
05 00
Q
05 01
R
05 02
S
05 03
T
05 04
U
05 05
V
05 06
W
05 07
X
05 08
Y
05 09
Z
05 10
[
05 11
\
05 12
]
05 13
¬
05 14
_
05 15
 
6.
 
Yu
06 00
A
06 01
B
06 02
C
06 03
D
06 04
E
06 05
F
06 06
G
06 07
X
06 08
och
06 09
J
06 10
K
06 11
L
06 12
M
06 13
H
06 14
Cirka
06 15
 
7.
 
P
07 00
Jag är
07 01
R
07 02
Från
07 03
T
07 04
U
07 05
F
07 06
Klockan
07 07
f
07 08
S
07 09
Z
07 10
SH
07 11
E
07 12
S
07 13
Ch
07 14
ST
07 15

Förklaringar till tabellen

För att underlätta uppfattningen av kommandon används mnemoniska koder i monteringsform , som visas i tabellen:

Monteringsvy Beskrivning Monteringsvy Beskrivning
ABGE lägg till en och förgrena om den är större än eller lika BEQ hoppa om lika
LÄGG TILL tillägg E exponent, (exponent)
OCH logisk multiplikation BLT hoppa om mindre än
ANS analys ELLER logiskt tillägg
Start BKEY hoppa om en tangent trycks ned
LADDA läser in BGE hoppa om det är större än eller lika
LADDA läsning från ML BHIS hoppa om det är större än eller identiskt
DIV division MOV spedition
SUB subtraktion keps konvertera kartesiska koordinater till polära koordinater
RTSI pseudo-retur från subrutinen SKRIVA UT Skriv ut
I P inmatning POC konvertera polära koordinater till kartesiska koordinater
SNYFTA enhetssubtraktion och villkorligt hopp SPARA inträde
MARK märka UT slutsats
MUL multiplikation ATOI omvandling till heltal
BBIS hoppa om biten är inställd (=1) PUNKT punkt
VÄNTA förväntan cmd team
SWA utbyta DEG grad
CLR rensa registret (nollställa) COM tecken inversion
NEG negation BR hoppa villkorslöst
INT hela RT II pseudo-retur från avbrott
VER kontrollera BSA förgrening eller identitet
GRÄV siffra (decimal) RTS tillbaka från subrutinen
SQR Roten ur RES återstoden
INV ömsesidig QRT fyrkant
JMM överföra kontrollen till etiketten BPER hoppa om programfel
XOR exklusiva eller BNE hoppa om inte lika
BMER hoppa om maskinfel BPL hoppa om plus
BEV övergång om ens BMI hoppa om minus
BBIC hoppa om biten rensas (=0) SLUTET slutet

Tangentbordsdrift D3-28

Det är möjligt att arbeta i ett av fyra lägen: 'P', 'V', 'PV', 'P' lägen slås på genom att trycka på knappen och indikeras av lyset från indikatorn bredvid.

Symbol på
nyckeln
Lagnamn
_
Mnemokod Kommandokod
_
M Märka MARK 04 08
SL Läser från ML LADDA 05 13
S Start 05 14
VP Återkalla
från minnet
MOV C,X 04 05
RFP Minnesskrivning
_
MOV X,C 04 04

Minnesorganisation

Allt minne adresseras oberoende på två huvudsakliga sätt:

I 128-kilobyte-versionen av maskinen används en personsökningsorganisation av minne med omedelbart omkopplingsbara (genom att ändra tillståndet för kontrollminnescellerna) sidor på 16 kilobyte vardera. Adressutrymmet utan att använda sidväxlingsmekanismen är 32 kilobyte.

Register och indikatorer

Register adresserades som minnesceller på några fasta adresser. I detta fall visas X- och Y-registren för aritmetik med flyttal kontinuerligt på två indikatorer.

I huvudprogrammets stoppläge var de flesta tangenterna på tangentbordet för aritmetiska och funktionella operationer med siffror i X- och Y-registren.

När huvudprogrammet kördes visade indikatorerna tillstånden för X- och Y-registren, men det fanns flera kommandon som gjorde det möjligt att ändra hur motsvarande minnesområde visades till ett av flera serviceregister.

Vid felsökning och start av den stegvisa exekveringen av programmet som felsöks, visade indikatorerna adressen till det körbara kommandot, operationskoden och de kommande tre byten med kommandon i minnet.

Register för att arbeta med bytes, 16-bitars ord var 16 vardera, medan 16 byteregister fysiskt sammanföll med de första åtta 16-bitarsregistren.

D3-28 datorfelmeddelanden

Koden Typ av fel Koden Typ av fel
0 Användarminnet flödar över 26 Ogiltig DATA-sats
ett Ogiltigt uttalande 27 Fel format på CMD-kommandon
2 Ingångsledningsspill trettio Fel format i FOR...NEXT-satsen
3 Ogiltig avgränsare i strängen 31 Avsaknad av NÄSTA
fyra Ogiltigt radnummer 32 Nej FÖR
5 Citera missmatch i en mening 33 Stack Overflow FÖR...NÄSTA
6 Saknar öppningsklammer före funktionsargument 34 Noll steg FÖR
7 Ogiltig LET-sats 35 Ogiltigt PRINT-satsformat
tio Fel indexinmatning 36 Fel utskriftsstorlek inställd
elva Fel indexdimension 37 Ogiltigt uttryck i TAB-satsen
12 Parenteser matchar inte i ett uttryck 38 Ingen öppningsskiva i magnetband (ML)
13 Ogiltigt uttryckselement 43 Det finns ingen rad att hoppa på GOSUB- eller GOTO-satser
fjorton Användarfunktion ej definierad 44 Det finns ingen extern subrutin med det angivna namnet
femton Ogiltigt variabelnamn femtio Fel erbjudande med ML tjänsteoperatör
tjugo Fel relation operation 52 Filstrukturfel
21 Ogiltig IF-sats 53 Frånvaron av en array i lagringsenheten vid mottagning från ML
22 Ogiltig COM- eller DIM-sats 54 Nästa block med data från ML i RAM lästes inte
23 Inte tillräckligt med utrymme för DIM-array 55 Läsblocket passar inte i RAM
24 Fel DEF-påstående 123 obefintlig variabel
25 Inga data för READ-satsen 128 Felaktig funktion under beräkning

I/O-portar

Maskinen hade som standard en kompakt kassettbandläsare/skrivare som användes i konsumentbandspelare.

Ingångs-utgångsgränssnittet gjorde det möjligt att ansluta en stansare och en stansad bandläsare, samt en åtta-tums diskettenhet.

Nätverksstruktur

En specifikation för ett lokalt nätverk med upp till 255 enheter (maskiner eller externa enheter, såsom skrivare) utvecklades och implementerades baserat på IRPR-parallellgränssnittet. Nätverkstopologin är en vanlig buss. Antalet anslutningsledare i kabeln är 34. Till exempel var från 5 till 18 maskiner anslutna i datorrummet vid Moskvainstitutet för fysik och teknik .

Programvara

BASIC

BASIC -språktolken (alternativ 3A) implementerades på Elektronika D3-28-datorn . Anmärkningsvärt för det faktum att det tilläts, omedelbart efter att tolken laddats, att ladda tolktilläggen i inbyggd kod med NML. Anknytningar anropades genom CALL-uttrycket med anknytningspaketnummer. Dessa tillägg gjorde det möjligt att kompensera för språkets begränsningar, det fanns tillägg för att arbeta med strängar, för tät packning av heltalsdata och många tillägg för att arbeta med kringutrustning. Från början stödde BASIC 3A endast reella tal.

"Tuzhilkinsky Basic"

Uppkallad efter namnet på författaren - Vladimir Alekseevich Tuzhilkin, distribuerades den huvudsakligen i Moskvainstitutet för fysik och teknik, där tolken skrevs. Fördelar - mer funktionalitet och mindre minne än den "officiella" versionen (8 KB mot 10,5 KB). Nackdelen är att tolken är designad för en icke-standardiserad anslutning av 15IE-00-013-skärmen, vilket begränsade dess bredare distribution. Den använde ett format för att lagra program och data, vilket också var inkompatibelt med originalversionen, men på grund av tillgången för ett stort antal MIPT-studenter till dessa maskiner överstiger volymen "mjukvara" skriven för denna dialekt vida volymen av andra program för D3-28.

FORTRAN-5M

Självnamn, visas efter den framgångsrika lanseringen av komplexet. Fungerade endast på system med 128 kB minne. Fortran-dialektkompilatorn, som sällan användes på sådana maskiner, gav prestanda jämförbar med ett program som ursprungligen skrevs i maskinkoder. Det kompilerade programmet skulle kunna skrivas till en kassett och användas oavsett vilken kompilator som är laddad. Under kompileringen förstörde den här kompilatorn ibland programmets källkod (förmodligen i fallet med en stor mängd av den), men tillät att den körbara modulen sparades korrekt. Tillåtet att infoga fragment i maskinkoder. Kanske var det grunden eller en tidig version av OS VT-MKhTI.

OS VT-MKhTI

vid Moskvas institut för kemisk teknologi. D. I. Mendeleev skapade ett operativsystem som heter institutets namn - OS VT-MKhTI. Utvecklaren av detta system var Vladimir Kalinkin. Systemet inkluderade en tolk-kompilator av sitt eget programmeringsspråk VT-MKhTI, som fungerade en storleksordning snabbare än den vanliga "Basic" och ett antal systemverktyg . Systemet genererades från en kassettgenerator (liknande ES-1022 ), det genererade systemet spelades in på en andra kassett.

Ett inslag i programmeringsspråket VT-MKhTI var användningen av både engelskspråkiga och ryskspråkiga operatörer och närvaron av interaktiv input (något som T9 på moderna smartphones ). Nu är det svårt att hitta en beskrivning av OS VT-MKhTI på nätverket, men det finns många användare som kommer ihåg detta system: 1 , 2 , 3 .

Se även

Anteckningar

  1. Rick Bensen. Wang 720C Advanced Programming Calculator  (engelska)  (inte tillgänglig länk) . The Old Calculator Web Museum (3 september 2008). Hämtad 12 september 2010. Arkiverad från originalet 3 augusti 2010.

Länkar