1863 |
yogev_ezra |
1 |
|
|
|
2 |
|
|
|
3 |
Б3-34 - программа |
|
|
4 |
|
|
|
5 |
|
|
|
6 |
|
|
|
7 |
|
|
|
8 |
|
|
9 |
|
|
10 |
Внимание! Данный |
|
|
|
11 |
документ находится в процессе разработки и может содержать ошибки. |
|
|
12 |
| |
|
|
13 |
| |
|
|
14 |
| |
|
|
15 |
| |
|
|
16 |
Калькулятор Б3-34.
|
|
|
17 |
Краткое руководство. |
|
|
18 |
Таблица команд.
|
|
|
19 |
Описание программы (этот |
|
|
20 |
файл).
|
|
|
21 |
Описание программы. |
|
|
22 |
|
|
|
23 |
|
|
24 |
|
|
25 |
|
|
|
|
26 |
Внешний вид. |
|
|
27 |
|
|
|
28 |
Линейка адреса. Предназначена для индикации текущего адреса программы. |
|
|
29 |
Может быть отключена соответствующей установкой программы из меню "Установки". |
|
|
30 |
Поле текстового сообщения. Предназначено для сообщения об ошибке или |
|
|
31 |
об особом состоянии калькулятора. |
|
|
32 |
Включатель питания. Очищаются все регистры, стек и стек возврата. |
|
|
33 |
Программа при отключении питания не изменяется. |
|
|
34 |
Переключатель радианы - градусы. Представление углов для операций |
|
|
35 |
с sin, cos, tg, arcsin, arccos, arctg. |
|
|
36 |
Индикатор Б3-34. |
|
|
37 |
Клавиши от F до Сx (всего 30 шт.). Для ввода команд. |
|
|
38 |
Текстовое поле для индикации текущего адреса программы в цифровом |
|
|
39 |
виде. Находится справа от клавиши ПП. |
|
|
40 |
|
|
|
41 |
|
|
|
42 |
| |
|
|
43 |
| |
|
|
44 |
|
|
|
45 |
|
|
46 |
|
|
47 |
|
|
|
|
48 |
Содержание меню "Программа". |
|
|
49 |
|
|
|
50 |
"Новая" - создание новой программы |
|
|
51 |
"Перезагрузить" - загрузить текщую программу из состава |
|
|
52 |
штатных программ. |
|
|
53 |
"Загрузить" - загрузить программу из состава штатных программ. |
|
|
54 |
"Сохранить как" - сохранить программу в составе штатных |
|
|
55 |
под новым именем. |
|
|
56 |
"Сохранить" - сохранить программу, если она имеется в составе |
|
|
57 |
штатных и текст программы изменился. |
|
|
58 |
"Сохранить всё" - сохранить программу, если она имеется |
|
|
59 |
в составе штатных, её регистры, стек и стек возврата. |
|
|
60 |
"Свойства" - вызов окна со свойствами текущей программы. |
|
|
61 |
"В текст" - вызов окна трансляции кодов программы в текстовый |
|
|
62 |
формат. |
|
|
63 |
"Из текста" - вызов окна загрузки программы из тектового |
|
|
64 |
файла. |
|
|
65 |
"Вывод в файл" - показать окно вывода в файл. Доступно при |
|
|
66 |
наличии выведенного текста. |
|
|
67 |
"Скорость" - показать окно установок скорости выполнения |
|
|
68 |
программы. |
|
|
69 |
"Регистры" - показать окно с содержимым всех регистров. |
|
|
70 |
"Установки" - показать окно с общими опциями программы. |
|
|
71 |
"Горячая клавиша" - окно выбора клавиши компьютера для запуска |
|
|
72 |
программы "Калькулятор Б3-34" или другой программы. |
|
|
73 |
"Выход" - выход из программы. |
|
|
74 |
|
|
|
75 |
|
|
|
76 |
|
|
|
77 |
| |
|
|
78 |
| |
|
|
79 |
|
|
|
80 |
|
|
81 |
|
|
82 |
|
|
|
|
83 |
Содержание меню "Правка". |
|
|
84 |
|
|
|
85 |
"Вставить" - команда вставки числа из текстового буфера |
|
|
86 |
обмена (системы). |
|
|
87 |
"Копировать" - команда копирования содержимого ренистра |
|
|
88 |
X (что видно и на индикаторе) в текстовый буфер обмена системы. |
|
|
89 |
"Очистить регистры" - обнуляет 16 регистров памяти. |
|
|
90 |
"Очистить стек" - обнуляет все регистры стека. |
|
|
91 |
"Очистить стек возврата" - обнуляет регистры стека возврата. |
|
|
92 |
"Очистить всё" - действует как и вкылючатель питания. Очищаются |
|
|
93 |
все регистры, стек и стек возврата. Программа не изменяется. |
|
|
94 |
"Очистить прогр. память" - очищает програмную память. |
|
|
95 |
"Следующее окно" - переключение между дечерними окнами. |
|
|
96 |
|
|
|
97 |
|
|
|
98 |
| |
|
|
99 |
| |
|
|
100 |
|
|
|
101 |
|
|
102 |
|
|
103 |
|
|
|
|
104 |
Содержание меню "Помощь". |
|
|
105 |
|
|
|
106 |
"Помощь" - вызов файла помощи (b3-34help0.htm) |
|
|
107 |
"О версии Б3-34" - сообщение об изменениях или особенностях |
|
|
108 |
данной версии программы. |
|
|
109 |
"Про это" - об авторе этой (пока недоделанной) программы. |
|
|
110 |
"На сайт автора" - для скачивания последней версии программы. |
|
|
111 |
"Ошибки" - сообщения об событиях в программе, служит для |
|
|
112 |
отладки программы b3_34.exe. |
|
|
113 |
|
|
|
114 |
|
|
|
115 |
| |
|
|
116 |
| |
|
|
117 |
|
|
|
118 |
|
|
119 |
|
|
120 |
|
|
|
|
121 |
Калькулятор имеет: |
|
|
122 |
|
|
|
123 |
програмную память объёмом в 100 или 256 шагов; |
|
|
124 |
16 адресуемых регистров памяти для хранения данных или адресов перехода |
|
|
125 |
в программе; |
|
|
126 |
команды прямых и косвенных переходов в программе, команды вызова |
|
|
127 |
подпрограм и команды возврата из подпрограм; |
|
|
128 |
возможность обращения к подпрограмме внутри подпрограм. Глубина таких |
|
|
129 |
обращений равна 5; |
|
|
130 |
команды прямого и косвенного безусловного перехода; |
|
|
131 |
четыре типа команд прямого и косвенного условного перехода (по условиям |
|
|
132 |
x=0, x!=0 (не равно 0), x>=0 (больше или равняется 0), x<0); |
|
|
133 |
команды организации циклов; |
|
|
134 |
команды косвенной записи содержимого регистра X в регистры памяти; |
|
|
135 |
команды косвенной индикации содержимого регистров памяти; |
|
|
136 |
команды сброса счётчика адресов в нулевое состояние; |
|
|
137 |
команда пуска и остановки при автоматическом вычислении по программе; |
|
|
138 |
команда пошагового выполнения программы в режиме "Автоматическая работа"; |
|
|
139 |
индикация кодов трёх последовательных шагов программы и текущего состояния |
|
|
140 |
счётчика адресов; |
|
|
141 |
клавиши пошагового просмотра программы в сторону увеличения или уменьшения |
|
|
142 |
адресов в режиме "Программирование"; |
|
|
143 |
команда вывода результатов в файл для последующей печати на принтере.
|
|
|
144 |
|
|
|
145 |
|
|
|
146 |
|
|
|
147 |
|
|
|
148 |
| |
|
|
149 |
| |
|
|
150 |
|
|
|
151 |
|
|
152 |
|
|
153 |
|
|
|
|
154 |
Установки программы. |
|
|
155 |
|
|
|
156 |
"Сброс калькулятора при выключении питания" - сброс всех |
|
|
157 |
регистров. |
|
|
158 |
"Раннее обнаружение ошибок" - . |
|
|
159 |
"Про это" - об авторе этой (пока недоделанной) программы. |
|
|
160 |
"На сайт автора" - для скачивания последней версии программы. |
|
|
161 |
"Ошибки" - сообщения об событиях в программе, служит для |
|
|
162 |
отладки программы b3_34.exe. |
|
|
163 |
|
|
|
164 |
|
|
|
165 |
| |
|
|
166 |
| |
|
|
167 |
Выписка из программы о назначении клавиш управления со стандартной
|
|
|
168 |
IBM клавиатуры для версии программы 1.31. |
|
|
169 |
{1,0x29,0,"клавиша ` (~)","клавиша калькулятора F (индекс 0)"},//
|
|
|
170 |
{1,0x14D,1,"клавиша Стрелка вправо","калькулятора ШГ вправо (индекс 1)"},//
|
|
|
171 |
{1,0x14B,2,"клавиша Стрелка влево","калькулятора ШГ влево (индекс 2)"},//
|
|
|
172 |
{1,0x147,3,"клавиша Home","клавиша калькулятора В/О (индекс 3)"},//
|
|
|
173 |
{1,0x14F,4,"клавиша End","клавиша калькулятора С/П (индекс 4)"},//
|
|
|
174 |
{1,0x25,5,"клавиша лат. K","клавиша калькулятора K (индекс 5)"},//
|
|
|
175 |
{1,0x13,5,"клавиша рус. K","клавиша калькулятора K (индекс 5)"},//
|
|
|
176 |
{1,0x17,6,"клавиша I","клавиша калькулятора ИП (индекс 6)"},//
|
|
|
177 |
{1,0x19,7,"клавиша лат.P ","клавиша калькулятора П (индекс 7)"},//
|
|
|
178 |
{1,0x22,7,"клавиша рус.П(Лат.G)","клавиша калькулятора П (индекс 7)"},//
|
|
|
179 |
{1,0x33,8,"клавиша рус.Б(или запятая)","клавиша калькулятора БП (индекс 8)"},//
|
|
|
180 |
{1,0x1F,9,"клавиша S ","клавиша калькулятора ПП (индекс 9)"},//
|
|
|
181 |
{1,0x47,10,"клавиша Цифр. клав. 7 ","клавиша калькулятора 7 (индекс 10)"},//
|
|
|
182 |
{1,0x08,10,"клавиша 7 ","клавиша калькулятора 7 (индекс 10)"},//
|
|
|
183 |
{1,0x48,11,"клавиша Цифр. клав. 8 ","клавиша калькулятора 8 (индекс 11)"},//
|
|
|
184 |
{1,0x09,11,"клавиша 8 ","клавиша калькулятора 8 (индекс 11)"},//
|
|
|
185 |
{1,0x49,12,"клавиша Цифр. клав. 9 ","клавиша калькулятора 9 (индекс 12)"},//
|
|
|
186 |
{1,0x0A,12,"клавиша 9 ","клавиша калькулятора 9 (индекс 12)"},//
|
|
|
187 |
{1,0x37,13,"клавиша Цифр. клав.* ","клавиша калькулятора X (индекс 13)"},//
|
|
|
188 |
{1,0x4E,14,"клавиша Цифр. клав. + ","клавиша калькулятора + (индекс 14)"},//
|
|
|
189 |
{1,0x4B,15,"клавиша Цифр. клав. 4 ","клавиша калькулятора 4 (индекс 15)"},//
|
|
|
190 |
{1,0x05,15,"клавиша 4 ","клавиша калькулятора 4 (индекс 15)"},//
|
|
|
191 |
{1,0x4C,16,"клавиша Цифр. клав. 5 ","клавиша калькулятора 5 (индекс 16)"},//
|
|
|
192 |
{1,0x06,16,"клавиша 5 ","клавиша калькулятора 5 (индекс 16)"},//
|
|
|
193 |
{1,0x4D,17,"клавиша Цифр. клав. 6 ","клавиша калькулятора 6 (индекс 17)"},//
|
|
|
194 |
{1,0x07,17,"клавиша 6 ","клавиша калькулятора 6 (индекс 17)"},//
|
|
|
195 |
{1,0x135,18,"клавиша Цифр. клав. / ","клавиша калькулятора / (индекс 18)"},//
|
|
|
196 |
{1,0x4A,19,"клавиша Цифр. клав. - ","клавиша калькулятора - (индекс 19)"},//
|
|
|
197 |
{1,0x21,19,"клавиша лат. F ","клавиша калькулятора - (индекс 19) и рег. F"},//
|
|
|
198 |
{1,0x4F,20,"клавиша Цифр. клав. 1 ","клавиша калькулятора 1 (индекс 20)"},//
|
|
|
199 |
{1,0x02,20,"клавиша клав. 1 ","клавиша калькулятора 1 (индекс 20)"},//
|
|
|
200 |
{1,0x50,21,"клавиша Цифр. клав. 2 ","клавиша калькулятора 5 (индекс 21)"},//
|
|
|
201 |
{1,0x03,21,"клавиша клав. 2 ","клавиша калькулятора 5 (индекс 21)"},//
|
|
|
202 |
{1,0x51,22,"клавиша Цифр. клав. 3 ","клавиша калькулятора 3 (индекс 22)"},//
|
|
|
203 |
{1,0x04,22,"клавиша клав. 3 ","клавиша калькулятора 3 (индекс 22)"},//
|
|
|
204 |
{1,0x150,23,"клавиша Стрелка вниз ","калькулятора смена XY (индекс 23)"},//
|
|
|
205 |
{1,0x148,24,"клавиша Стрелка вверх ","калькулятора Стрелка вверх (индекс 24)"},//
|
|
|
206 |
{1,0x12,24,"клавиша лат. E ","калькулятора Стрелка вверх (индекс 24) и рег.E"},//
|
|
|
207 |
{1,0x11C,24,"клавиша Цифр. Enter ","калькулятора Стрелка вверх (индекс 24) и |
|
|
208 |
рег.E"},//
|
|
|
209 |
{1,0x52,25,"клавиша Цифр. клав. 0 ","клавиша калькулятора 0 (индекс 25)"},//
|
|
|
210 |
{1,0x0B,25,"клавиша клав. 0 ","клавиша калькулятора 0 (индекс 25)"},//
|
|
|
211 |
{1,0x53,26,"клавиша Цифр. клав. . ","клавиша калькулятора , (индекс 26)"},//
|
|
|
212 |
{1,0x1E,26,"клавиша лат.A ","клавиша калькулятора , (индекс 26)и рег. A"},//
|
|
|
213 |
{1,0xC,27, "клавиша - (тире) ","клавиша калькулятора /-/ (индекс 27)"},//
|
|
|
214 |
{1,0x30,27,"клавиша лат.B ","клавиша калькулятора /-/ (индекс 27)рег.B"},//
|
|
|
215 |
{1,0x152,28,"клавиша Insert ","клавиша калькулятора ВП (индекс 28)"},//
|
|
|
216 |
//{0xBD,28,"клавиша ???? "," клавиша калькулятора ВП (индекс 28)"},//
|
|
|
217 |
{1,0x153,29,"клавиша Delete ","клавиша калькулятора Cx (индекс 29)"},//
|
|
|
218 |
{1,0x39,29,"клавиша Пробел ","клавиша калькулятора Cx (индекс 29)"},//
|
|
|
219 |
{1,0x20,29,"клавиша лат. D ","клавиша калькулятора Cx (индекс 29)и рег.D"}// |
|
|
220 |
Замечания в ходе проверки
|
|
|
221 |
Последний шаг программы не виден, этот недостаток можно устранить,
|
|
|
222 |
если не следовать логике Б3-34. Слово VER100 в начале текста программы означает, |
|
|
223 |
что программа имеет 100 шагов, а слово VER256 - 256 шагов. До начала первого |
|
|
224 |
шага программы могут быть заданы начальные значения регистрам памяти сочетанием, |
|
|
225 |
например П0=1.567 или П0=1,567. Коментарий может быть добавлен в пределах строки |
|
|
226 |
после двух наклонных черт: //. Команды (в основном) можно печатать на русским |
|
|
227 |
и латинским шрифтом. Вместо ИП можно набрать IP, ip, ип, iП и т.д.. |
|
|
228 |
Запуск.
|
|
|
229 |
Слева, ниже индикатора, включить выключатель
|
|
|
230 |
питания.
|
|
|
231 |
|
|
|
232 |
Продолжение следует ...
|
|
|
233 |
|
|
|
234 |
|
|
|
235 |
|
|
|
236 |
|