Данному образовательному сайту пришлось несколько раз менять свое имя. С 2022 года доступ к нему обеспечивается по URL
emc.orgfree.com

emc.km.ru (2001-2007) ==> educomp.org.ru (2007-2011) ==> educomp.runnet.ru (2011-2021) ==> emc.orgfree.com (2022-...)
Более подробно об истории сайта можно прочитать здесь.


Учебные модели компьютера



Модели (software):

"Е14" (parallel !!!)
"S9PU" (parallel)

Модели (hardware):






Награды сайта
Награды сайта 2005

"SIC": таблица команд

В системе команд базовой модели SIC представлены следующие операции:

  • запись регистров в память и их загрузка из памяти;
  • арифметические операции над целыми числами (все через регистр A);
  • сравнение;
  • логические операции;
  • безусловный и условные переходы;
  • взаимодействие с подпрограммами;
  • операции обмена с внешними устройствами
и некоторые другие.

В SIC/XE добавлены:

  • арифметические операции над вещественными числами и их сравнение;
  • перевод чисел из целой формы в вещественную и обратно; нормализация;
  • запись и чтение из памяти для дополнительных регистров;
  • межрегистровые пересылки и операции;
  • сдвиги;
  • обращение к супервизору (операционной системе);
  • чтение в память показаний таймера;
  • симуляция DMA обмена
и некоторые другие.

Ниже приведена полная система команд для базовой модели SIC. Расширенную систему команд для SIC/XE можно посмотреть, например, на этой странице или в этой презентации (ее размер более 7 мб).

МнемоникаКодДействияКомментерии
LDA m00 A <== (m..m+2)(m..m+2) – 3 байта с адреса m
LDX m04X <== (m..m+2) 
LDL m08L <== (m..m+2) 
STA m0C(m..m+2) <== A 
STX m10(m..m+2) <== X 
STL m14(m..m+2) <== L 
ADD m18 A <== A + (m..m+2) 
SUB m1C A <== A - (m..m+2) 
MUL m20 A <== A * (m..m+2) 
DIV m24 A <== A / (m..m+2) 
COMP m28 A : (m..m+2)устанавливаются условные признаки
TIX m2C X <== X +1; X : (m..m+2)для организации циклов
JEQ m30 PC <== m при = 
JGT m34 PC <== m при > 
JLT m38 PC <== m при < 
JEQ m3C PC <== mбезусловный переход
AND m40A <== A & (m..m+2) 
OR m44A <== A | (m..m+2) 
JSUB m48 L <== PC; PC <== mобращение к подпрограмме
RSUB m4C PC <== Lвозврат из подпрограммы
LDCH m50 A <== (m)значение заносится в младший байт A
STCH m54 (m) <== Aзначение берется из младшего байта A
RD mD8 A <== устройство mзначение заносится в младший байт A
WD mDC устройство m <== Aзначение берется из младшего байта A
TD mE0 тестировать устройство mесли ответ =0, то устройство занято
STSW mE8 (m..m+2) <== SWчтение регистра состояния

На первый взгляд кажется странным, что коды операций нарастают не на 1, как это традиционно принято, а на 4 (0, 4, 8, C, 10, 14, ...). Но такая нумерация позволяет сохранить незадействованными два младших бита, которые в SIC/XE используются для задания расширенных методов адресации.


Автор сайта - Евгений Александрович Еремин (Пермский государственный педагогический университет). e_eremin@yahoo.com


Free Web Hosting