Редактирование: ⟩⟨

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

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

Текущая версия Ваш текст
Строка 1: Строка 1:
'''><''' — фортовское слово [[Каллисто]]. Поменять местами байты в переданном через стек двухбайтном значении.
'''><''' — стандартное слово [[Каллисто]].
><            ( u −− u1 )                          Обменять старший и младший байты в 16−битном числе u.


== Ввод слова &gt;&lt; ==
В [[Режим NUM|режиме NUM]] последовательно нажмите четыре клавиши [[Клавиша F|{{Оранжевая клавиша|F}}]] [[Клавиша ИП|{{Чёрная клавиша|ИП}}]] &nbsp; [[Клавиша F|{{Оранжевая клавиша|F}}]] {{ШГ→}}


== История ==
== &gt;&lt; в предыдущем стандарте Forth-83 (англ.) ==
Слово &gt;&lt; прослеживается с 1979 года. В 1994 году оно было убрано из стандартов Форта. В FORTH ИТЭФ слово &gt;&lt; было известно под именем SWAB
 
=== &gt;&lt; в предыдущем стандарте Forth-83 (англ.) ===
       ><          16b1 -- 16b2                            "byte-swap"
       ><          16b1 -- 16b2                            "byte-swap"
           Swap the high and low bytes within 16b1.
           Swap the high and low bytes within 16b1.


=== &gt;&lt; в стандарте Forth-79 (англ.) ===
 
== &gt;&lt; в стандарте Forth-79 (англ.) ==
  ><            n1 -- n2                                "byte-swap"
  ><            n1 -- n2                                "byte-swap"
     Swap the high and low bytes within n1.
     Swap the high and low bytes within n1.
== Реализация ==
<pre>
1433 ;#SWAB
1434 ; ><              ( U −− U1 )                          Обменять старший и младший байты в 16−битном числе U.
1435 LSWAB:          .DB    2
1436                .TEXT  "><"
1437                .DW    LNEGATE
1438 SWAB:          .DW    JSWAB
1439 JSWAB:          RM3 M8
1440                KRM8 ENT RME / FANS <−> KINT MA ∗ −
1441                RME ∗ RMA + KM8  KGOTO9
</pre>
=== Советская реализация ===
В FORTH ИТЭФ слово &gt;&lt; называлось SWAB и было [[примитив]]ом, вот его определение:
<PRE>
            HEAD    204Q,'SWA',302Q,SWAB                ; SWAB
            POP  AX
            XCHG AL, AH
            PUSH AX
            NEXT
</PRE>
== Ссылки ==
* {{Исходник|SWAB|&gt;&lt;}}




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

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

Отменить Справка по редактированию (в новом окне)