Кіріспе
Early Dutch computer Electrologica X1 - 1958-1965 жылдары Нидерландыда жасалған және өндірілген цифрлық компьютер. Отызға жуық данасы Нидерланды мен шетелде шығарылып, сатылды. X1 компьютерін 1947 жылдан бері компьютерлік жобалаумен айналысқан академиялық ұйым Амстердамдағы Математикалық орталық жобалаған және машинаны өндіру мақсатында құрылған компания Electrologica NV өндірген. X1 - қатты күйдегі қос компьютер ("толық транзисторлы" 1965 жылы X1 -дің орнын X8 алды. Electrologica компаниясын бірнеше жылдан кейін Philips сатып алды. Нәтижесінде шартты орындау тек соңғы арифметикалық операцияның нәтижесіне негізделген шартты емес, бірнеше жол бұрын жасалған сынақтарға негізделуі мүмкін. Бұл бағдарламаларды жинақтап жазуға мүмкіндік берді. Келесі мысал n-дегі жад мәнін аккумуляторға жүктеуді көрсетеді, A-ны қосалқы бағдарламаны шақырады (ол осы мәнді A-да пайдаланады деп болжауға болады) және ақырында A-ны оқылған санның абсолюттік мәні ретінде белгілейді: 2A n P // көшірмелеу [n] А-ға, жағдайды белгіге қойыңыз "иә" егер оң болса 6T fn 0 // функцияны fn-де шақырыңыз, ол N 5P AA шартты белгісі сақталған жағдайда қайтарылады // егер жағдай белгісі "жоқ" болса, A-ны көшірмелеу X1 арифметикалық операторлары екілік бірліктерді толықтыру арифметигін қолданды.
The Electrologica X1 was a digital computer designed and manufactured in the Netherlands from 1958 to 1965. About thirty were produced and sold in the Netherlands and abroad. The X1 was designed by the Mathematical Centre in Amsterdam, an academic organization that had been involved in computer design since 1947, and manufactured by Electrologica NV, a company formed expressly for the purpose of producing the machine. The X1 was a solid state binary computer ("completely transistorized" In 1965, the X1 was superseded by the X8. Electrologica was taken over by Philips a few years later. As a result, conditional execution can be based on tests made some number of lines earlier, rather than being conditional only based on the result of the most recent arithmetic operation. This allowed for compact expression of programs. The following example demonstrates the loading of the value of memory at n into the accumulator A, calling a subroutine (which presumably uses that value in A), and finally setting A to be the absolute value of the number read:
2A n P // copy [n] to A, set condition flag to "yes" if positive
6T fn 0 // call the function at fn, which will return with the condition flag preserved
N 5P AA // if condition flag is "no", copy A to A
The X1 arithmetic operators used binary ones' complement arithmetic.
Құрастырушы
X1 қарапайым құрастырушыны тек оқу үшін арналған жадымен қамтыды. Оның негізгі ерекшеліктері бар: символды мекенжайлар анықталуы мүмкін, бірақ символдар екі әріптен тұрады. Нұсқаулар операцияны білдіретін цифрдың және жұмыс істейтін тіркелімді белгілейтін әріптің немесе операция класын көрсететін бір немесе екі әріптің комбинациясы арқылы аталады. Мысалы, "0A" дегеніміз "Акумулятор А-ға жад мазмұнын қосу", ал "5P" дегеніміз "аккумуляторды басқа аккумулятордың теріс мәніне қою". Символды мекенжайларды әдетте "параграфтарды", яғни кодтың немесе деректердің байланысты блоктарын атау үшін қолданады. Символды мекенжайлар "жол нөмірі" (сандық ауытқу) және "бет нөмірі" (0-ден 31-ге дейінгі аралықтағы сан) арқылы өзгертіледі. Мысалы, "3 FE 6" - 3-жол, 6-бет, 195 (6 * 32 + 3) ауытқуды білдіреді. Бұл адрестік белгілеу - ассемблердің ерекшелігі; аппараттық адрестеу тек 15 биттік адрестерді қолданады.