Показать сообщение отдельно
  #1  
Старый 14.10.2012, 19:16
Аватар для Пермский котяра
Пермский котяра Пермский котяра вне форума
гость
 
Регистрация: 14.04.2012
Адрес: Пермский район
Сообщений: 361
Пермский котяра на пути к лучшему
По умолчанию основы программирования на калькуляторе

как устроена память в этом калькуляторе.

В распоряжении пользователя имеется 4 стековых регистра: X, Y, Z, T. Содержимое регистра X всегда показывается на экране (в режиме расчетов), ввод чисел тоже идет в него. По сути, стековая память после включения калькулятора выглядит так:

T 0 Z 0 Y 0 X 0

Для помещения чего-либо в стек используется клавиша [В↑]. Она копирует содержимое регистра X в регистр Y, значение регистра Y в Z, Z в T, а значение, находившееся в T теряется. То есть, если перед нажатием на кнопку [В↑] в регистрах были значения

T 5 Z 8 Y 14,5 X 6,

то после значения станут

T 8 Z 14,5 Y 6 X 6

Кроме того существует команда, позволяющая циклически сдвинуть все значения регистров: T в Z, Z в Y, Y в X, X в T. Для этого нужно нажать [F] [.].

Команда [↔] меняет содержимое регистров X и Y местами.

Команда [CX] стирает содержимое регистра X.

Помимо стековой памяти, в калькуляторе есть 15 адресуемых регистров (RG0-RGE). Для работы с ними используются клавиши [X→П] и [П→X]. Первая команда помещает содержимое регистра X в соответствующий адресуемый регистр. Например, последовательность команд [4] [X→П] [0] помещает в регистр RG0 число 4. Вторая команда, как вы уже догадались, копирует содержимое адресуемого регистра в регистр X. То есть [П→X] [0] поместит в X число 4.

Важно помнить, что после выключения калькулятора значения всех регистров стираются.
_______________________________________

РАСЧЁТЫ

Главное, что необходимо знать перед началом расчетов — в МК-61 используется обратная польская нотация (ОПН). Если нам нужно совершить какую-либо унарную операцию, она совершается над числом, находящимся в регистре X. При этом значения других регистров не меняются. Бинарные операции осуществляются над содержимыми регистров Y и X (именно в таком порядке). Значение результата помещается в X, Z помещается в Y, T копируется в Z. Предыдущее значение регистра X помещается в служебный регистр X1. Таким образом, если нам нужно посчитать банальное 2 + 3 (в ОПН 2 3 +), то нужно нажать на калькуляторе клавиши: [2] [В↑] [3] [+]. При этом значения регистров меняются следующим образом:

До всех операций:

T 8 Z 14,5 Y 6 X 0


После нажатия клавиш [2] [В↑] [3]:

T 14,5 Z 6 Y 2 X 3


После нажатия [+]:

T 14,5 Z 14,5 Y 6 X 5


Попробуем провести чуть более сложные вычисления, например, (15 + 2 / 5) * 7 + 10. В ОПН это выражение можно записать так: 15 2 5 / + 7 * 10 +. Для того, чтобы это посчитать на калькуляторе, мы должны нажать клавиши: [15] [В↑] [2] [В↑] [5] [/] [+] [7][*] [10] [+].
___________________________________________
Ответить с цитированием