Редактирование: K INT

Перейти к навигации Перейти к поиску
Внимание: Вы не вошли в систему. Ваш IP-адрес будет общедоступен, если вы запишете какие-либо изменения. Если вы войдёте или создадите учётную запись, её имя будет использоваться вместо IP-адреса, наряду с другими преимуществами.

Правка может быть отменена. Пожалуйста, просмотрите сравнение версий ниже, чтобы убедиться, что это нужная вам правка, и запишите страницу ниже, чтобы отменить правку.

Текущая версия Ваш текст
Строка 1: Строка 1:
{{Врезка-команда
Одноместная команда $K [x]$ (лат. '''K INT''') «Выделение целой части» с кодом 34 выделяет целую часть числа, содержащегося в [[X|регистре X]]. Операция производится отбрасыванием дробной части числа. Знак числа не изменяется. Результат помещается в [[X|регистр X]].
| мнемоника          = К [x]
| мнемоника клавиш    = {{Синяя команда 2|К|[x]}}
| код                = 34
| русская мнемоника  = К [x]
| латинская мнемоника = K INT
| группа              = [[алгебраические операции]]
| число операндов    = [[одноместные операции|одноместная]]
| клавиши            = [[Клавиша К|{{Синяя клавиша|К}}]] [[Клавиша 7|{{Серая клавиша|7}}]]
| число шагов        = 1
| признак перезаписи  = сбрасывается
| первое появление    = [[МК-61]]
| время              = ?
| скорость            = ?
}}
Одноместная команда K [x] (лат. '''K INT''') «Выделение целой части» с кодом 34 выделяет целую часть числа, содержащегося в [[RX|регистре X]]. Такая математическая операция называется усечением («округлением к нулю») и производится отбрасыванием значащих цифр, стоящих после десятичной запятой. Знак числа не изменяется. Результат помещается в [[RX|регистр X]]. Старое содержимое [[RX|регистра X]] помещается в [[X1|регистр X1]].


Действие команды K INT не эквивалентно математической операции вычисления целой части для отрицательных чисел.
Действие команды K INT не эквивалентно математической операции вычисления целой части для отрицательных чисел.


== Это интересно ==
== Это интересно ==
* <math>[x]=0</math>, если <math>0 \le x < 1</math>. Для остальных чисел знак [x] всегда совпадает со знаком x.
* $[x]=0$, если 0≤x<1. Для остальных чисел знак $[x]$ всегда совпадает со знаком x.
* На ЭКВМ всегда верно, что: <math>x = [x] + \{x\}</math>
* На ЭКВМ всегда верно, что: $x = [x] + \{x\}$


== История ==
== История ==
Поскольку при косвенном обращении происходило отсечение дробной части, для нахождения целой части числа в калькуляторах [[Б3-34]] и аналогичных использовалась последовательность ПR, КИПR, ИПR, где R - немодифицируемый регистр памяти от 7 до D (регистра E в Б3-34 не было).
Поскольку при косвенном обращении происходило отсечение дробной части, для нахождения целой части числа в калькуляторах [[Б3-34]] и аналогичных использовалась последовательность ПR, КИПR, ИПR, где R - немодифицируемый регистр памяти от 7 до D (регистра E в Б3-34 не было).


В ЭКВМ, как и в калькуляторах [[МК-52]], [[МК-61]] для нахождения целой части есть специальная команда выделения целой части '''К[x]'''. Эта команда в ЭКВМ реализована так же, как и в советских ПМК. Фактически она выполняет отсечение дробной части. Соответственно, команда выделения дробной части [[K FRAC|K {x}]] в ЭКВМ и советских ПМК выполняет отсечение целой части числа.
В ЭКВМ, как и в калькуляторах [[МК-52]], [[МК-61]] для нахождения целой части есть специальная команда выделения целой части '''К[x]'''. Эта команда в ЭКВМ реализована так же, как и в советских ПМК. Фактически она выполняет отсечение дробной части. Соответственно, команда выделения дробной части [[K FRAC|K {x}]] в ЭКВМ и советских ПМК выполняет отсечение целой части числа. При использовании функций с отрицательными значениями аргумента результат не соответствует определению целой и дробной части числа, принятой в математике. Например, целая часть числа минус 3,14 равна минус 4, а дробная 0,86. Это, согласно определению, ближайшее целое, не превышающее исходного числа и их разность. Но при использовании функций в ЭКВМ и советских ПМК получаем минус 3 и минус 0,14. Эта особенность команд советских ПМК сохранена в ЭКВМ для совместимости.  
 
При использовании функций с отрицательными значениями аргумента результат не соответствует определению целой и дробной части числа, принятой в математике. Например, целая часть числа минус 3,14 равна минус 4, а дробная 0,86. Это, согласно определению, ближайшее целое, не превышающее исходного числа и их разность. Но при использовании функций в ЭКВМ и советских ПМК получаем минус 3 и минус 0,14. Эта особенность команд советских ПМК сохранена в ЭКВМ для совместимости.
 
== Советская реализация ==
Из книги Я.К. Трохименко [[Программируемые микрокалькуляторы. Устройство и пользование. (книга)|«Программируемые микрокалькуляторы. Устройство и пользование.»]] (стр. 138):
 
«Выполнение оператора выделения К[х] целой INT (x) или К{х} дробной FRC (х) части содержимого регистра Х сводится к присвоению нулевого значения дробной или целой части числа X, представленного в естественной форме INT (x) := 0 с последующим приведением к показательной форме.»


== Ссылки ==
== Ссылки ==
{{Документация|mk_d11.htm#p7|Команда К INT на сайте НПП «СЕМИКО», п. 7.11}}
* [http://mk.semico.ru/mk_d11.htm#p7 Команда К INT на сайте НПП «СЕМИКО», п. 7.11]
* [http://ru.wikipedia.org/wiki/%D0%A6%D0%B5%D0%BB%D0%B0%D1%8F_%D1%87%D0%B0%D1%81%D1%82%D1%8C Целая часть на Википедии] — определение не совпадает с командой $K [x]$ для отрицательных чисел
* [http://ru.wikipedia.org/wiki/%D0%A6%D0%B5%D0%BB%D0%B0%D1%8F_%D1%87%D0%B0%D1%81%D1%82%D1%8C Целая часть на Википедии] — определение не совпадает с командой $K [x]$ для отрицательных чисел
* [https://en.wikipedia.org/wiki/Truncation Truncation на английской Википедии] ''(англ.)''
* См. также [[K FRAC|К {x}]]
* См. также [[K FRAC|К {x}]]


Пожалуйста, учтите, что любой ваш вклад в проект «ПМК вики» может быть отредактирован или удалён другими участниками. Если вы не хотите, чтобы кто-либо изменял ваши тексты, не помещайте их сюда.
Вы также подтверждаете, что являетесь автором вносимых дополнений, или скопировали их из источника, допускающего свободное распространение и изменение своего содержимого (см. Pmkwiki:Авторские права). НЕ РАЗМЕЩАЙТЕ БЕЗ РАЗРЕШЕНИЯ ОХРАНЯЕМЫЕ АВТОРСКИМ ПРАВОМ МАТЕРИАЛЫ!

В целях защиты вики от автоматического спама в правках просим вас решить следующую каптчу:

Отменить Справка по редактированию (в новом окне)
Источник — https://pmk.the-hacker.ru/K_INT