Внимание: Вы не вошли в систему. Ваш IP-адрес будет общедоступен, если вы запишете какие-либо изменения. Если вы
войдёте или
создадите учётную запись, её имя будет использоваться вместо IP-адреса, наряду с другими преимуществами.
Правка может быть отменена.
Пожалуйста, просмотрите сравнение версий ниже, чтобы убедиться, что это нужная вам правка, и запишите страницу ниже, чтобы отменить правку.
Текущая версия |
Ваш текст |
Строка 7: |
Строка 7: |
|
| |
|
| == Реализация == | | == Реализация == |
| <pre>
| |
| 2406 ;#UPPER
| |
| 2407 ; UPPER ( a u −− ) Перевести в верхний регистр u литер по адресу a.
| |
| 2408 LUPPER: .DB 5
| |
| 2409 .TEXT "UPPER"
| |
| 2410 .DW LDTRAI
| |
| 2411 UPPER: .DW JUPPER ; Перевести строку литер в верхний регистр.
| |
| 2412 JUPPER: RM3 M8 1 + MA 1 + M3
| |
| 2413 KRM8 M0 +/− KX<09
| |
| 2414 KRMA 10001 − KX>=09 M5
| |
| 2415 UPPERL: KRM5
| |
| 2416 97 − PX>=0 UPPER2 ; 'a'
| |
| 2417 26 − PX>=0 UPPER3 ; 'z'−96
| |
| 2418 37 − PX>=0 UPPER2 ; 'а'−123
| |
| 2419 16 − PX>=0 UPPER4 ; 'п'−159
| |
| 2420 48 − FX>=0 UPPER2 ; 'р'−176
| |
| 2421 16 − FX>=0 UPPER6 ; 'я'−223
| |
| 2422 1 − FX=0 UPPER2 ; 'ё'−241
| |
| 2423 240 GOTO UPPER5 ; 'Ё'
| |
| 2424 UPPER6: 160 GOTO UPPER7 ; 'Р'+16
| |
| 2425 UPPER4: 144 ; 'А'+16
| |
| 2426 .DB 0f9H ; PX>=0 aka PGOTO UPPER7, пропустить 2 шага
| |
| 2427 UPPER3: 91 ; 'A'+26
| |
| 2428 UPPER7: +
| |
| 2429 UPPER5: PKM05
| |
| 2430 UPPER2: PFL0 UPPERL
| |
| 2431 UPPERR: KGOTO9
| |
| </pre>
| |
|
| |
| === Советская реализация ===
| |
| В FORTH ИТЭФ слово UPPER было [[примитив]]ом, вот его определение: | | В FORTH ИТЭФ слово UPPER было [[примитив]]ом, вот его определение: |
| <PRE> | | <PRE> |
Строка 59: |
Строка 29: |
| {{заготовка}} | | {{заготовка}} |
| [[Категория:Слова Каллисто]] | | [[Категория:Слова Каллисто]] |
| [[Категория:Фортовские слова]]
| |
| [[Категория:Примитивы]] | | [[Категория:Примитивы]] |
| [[Категория:Работа с памятью Каллисто]] | | [[Категория:Работа с памятью Каллисто]] |