Внимание: Вы не вошли в систему. Ваш IP-адрес будет общедоступен, если вы запишете какие-либо изменения. Если вы
войдёте или
создадите учётную запись, её имя будет использоваться вместо IP-адреса, наряду с другими преимуществами.
Правка может быть отменена.
Пожалуйста, просмотрите сравнение версий ниже, чтобы убедиться, что это нужная вам правка, и запишите страницу ниже, чтобы отменить правку.
Текущая версия |
Ваш текст |
Строка 17: |
Строка 17: |
|
| |
|
| == Реализация == | | == Реализация == |
| <pre>
| |
| 1443 ;#StoD
| |
| 1444 ; S>D ( n −− u1 u2 ) Преобразовать 32−битное число n в пару 16−битных чисел u2 u1.
| |
| 1445 ; Немного сложнее DUP 0< т.к. мы преобразовываем 12−разрядные десятичные числа, а не 16−битные двоичные.
| |
| 1446 LSTOD: .DB 3
| |
| 1447 .TEXT "S>D" ; ( n −− dd )
| |
| 1448 .DW LSWAB
| |
| 1449 STOD: .DW JSTOD
| |
| 1450 JSTOD: RM3 M8 KRM8 PGSB Norm32
| |
| 1451 ENT ENT 65536 / FANS <−> KINT KM3 ∗ − KM8 KGOTO9
| |
| </pre>
| |
| Реализация из SP-Forth 4.20:
| |
| <pre>
| |
| CODE S>D ( n -- d ) \ 94
| |
| \ Преобразовать число n в двойное число d с тем же числовым значением.
| |
| CDQ
| |
| LEA EBP, -4 [EBP]
| |
| MOV [EBP], EAX
| |
| MOV EAX, EDX
| |
| RET
| |
| END-CODE
| |
| </pre>
| |
|
| |
| === Советская реализация ===
| |
| У Баранова-Ноздрунова приводится следующее определение слова S>D (стр. 29): | | У Баранова-Ноздрунова приводится следующее определение слова S>D (стр. 29): |
| : S>D ( A ---> AA ) | | : S>D ( A ---> AA ) |
Строка 81: |
Строка 57: |
| [[Категория:Слова Каллисто]] | | [[Категория:Слова Каллисто]] |
| [[Категория:Примитивы]] | | [[Категория:Примитивы]] |
| [[Категория:Стандартные слова]]
| |
| [[Категория:1994 CORE]]
| |
| [[Категория:2012 CORE]]
| |