UPPER
UPPER — фортовское слово Каллисто. Делает все буквы в строке заглавными.
UPPER ( a u −− ) Перевести в верхний регистр u литер по адресу a.
Перевести строку символов по адресу a длиной u в верхний регистр. Литеры, не являющиеся строчными буквами, сохраняют свои значения.
Ввод слова UPPER[править]
В режиме ЛАТ последовательно нажмите клавиши 3 6 6 ИП ×
Реализация[править]
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
Советская реализация[править]
В FORTH ИТЭФ слово UPPER было примитивом, вот его определение:
HEAD 205Q,'UPPE',3220,UPPER ; UPPER POP CX POP BX $COMP: CMP BYTE PTR [BX], 141Q JL OFLIM CMP BYTE PTR [BX], 172Q JG OFLIM AND [BX], 177737Q OFLIM: INC BX LOOP $COMP NEXT
Ссылки[править]
У этой статьи нет иллюстраций. Вы можете помочь проекту, добавив их. |
Это заготовка статьи. Вы можете помочь проекту, дополнив её. |