−TRAILING: различия между версиями
AtH (обсуждение | вклад) |
AtH (обсуждение | вклад) |
||
Строка 16: | Строка 16: | ||
== История == | == История == | ||
Слово −TRAILING взято в [[Каллисто]] из Форта, в котором входит во все стандарты, включая fig-Форт, и не менялось с 1979 года. Это классическое слово, во многом определяющее образ мышления программистов на Форте. | |||
В Форте FSP88 и FORTH ИТЭФ это слово было известно под именем -TRAIL | В Форте FSP88 и FORTH ИТЭФ это слово было известно под именем -TRAIL | ||
Версия от 03:55, 6 июня 2016
−TRAILING — стандартное слово Каллисто. Определить длину строки без завершающих пробелов.
−TRAILING ( a u1 −− a u2 ) Отсечь конечные пробелы.
Команда ADR N −TRAILING сокращает значение N на число пробелов между последним значащим символом и адресом ADR+N. Этот оператор может использоваться перед TYPE и особенно полезен при печати, так как исключает холостые пробеги каретки.
Ввод слова −TRAILING
В режиме NUM последовательно нажмите клавиши − Р-ГРД-Г 2 × ШГ← 7 − 7 4 БП
Для возврата в режим NUM нажмите синюю клавишу P .
−TRAILING в стандарте ANS Forth
17.6.1.0170 -TRAILING "dash-trailing" STRING ( c-addr u1 -- c-addr u2 ) Если u1 больше чем нуль, u2 равно u1 минус число пробелов в конце символьной строки, определенной c-addr u1. Если u1 нуль или вся строка состоит из пробелов, u2 нулевой.
История
Слово −TRAILING взято в Каллисто из Форта, в котором входит во все стандарты, включая fig-Форт, и не менялось с 1979 года. Это классическое слово, во многом определяющее образ мышления программистов на Форте.
В Форте FSP88 и FORTH ИТЭФ это слово было известно под именем -TRAIL
−TRAILING в предыдущем стандарте Forth-83 (англ.)
-TRAILING addr +n1 -- addr +n2 79 "dash-trailing" The character count +n1 of a text string beginning at addr is adjusted to exclude trailing spaces. If +n1 is zero, then +n2 is also zero. If the entire string consists of spaces, then +n2 is zero.
−TRAILING в стандарте Forth-79 (англ.)
-TRAILING addr n1 -- addr n2 148 "dash-trailing" Adjust the character count n1 of a text string beginning at addr to exclude trailing blanks, i.e., the characters at addr+n2 to addr+n1-1 are blanks. An error condition exists if n1 is negative.
−TRAILING в fig-FORTH Release 1 glossary, май 1979 (англ.)
-TRAILING addr n1 --- addr n2 Adjusts the character count n1 of a text string beginning address to suppress the output of trailing blanks. i.e. the characters at addr+n1 to addr+n2 are blanks.
Реализация
Слово −TRAILING в ФОРТ-ЕС было примитивом. Вот его описание и определение:
-TRAILING A,N1->A,N2 ОТСЕЧЬ КОНЕЧНЫЕ ПРОБЕЛЫ 41 Экран номер 41 ( 31.03.86 -TRAILING ' ['] [COMPILE] LOAD THRU ;S --> ) CODE -TRAILIN6 ( A,N1- >A,N2) 14 LHRW12 BAL, RW1 RMASK NR, RW1 RFORTH AR, 0 RW1 LR, RW1 RW2 AR, BEGIN, RW1 0 CR, 1 =F BNH, RW1 0 BCTR, 0 (, RW1 64 CLI, ?NE UNTIL, 0 0 BCTR, 1 =H RW1 0 SR, PUTRW1 В, END-CODE
В FORTH ИТЭФ слово −TRAILING называлось −TRAIL и также было примитивом. Вот его определение:
HEAD 206Q,'-TRAI',314Q,DTRAI ; -TRAIL POP CX POP BX PUSH BX ADD BX, CX COMPA: DEC BX CMP BYTE PTR [BX], 32 ; BLANK ? JNE NO LOOP COMPA NO: PUSH CX NEXT
Ссылки
- Исходный текст слова −TRAILING в Каллисто Классик 1.0
- Слово −TRAILING (dash-trailing) в стандарте ANS Forth (англ.)
- Слово −TRAILING (dash-trailing) в черновике Forth 200x (англ.)
- ВВОД-ВЫВОД в книге Л.Броуди «Начальный курс программирования на языке Форт»
- I/O and You в книге Leo Brodie Starting Forth (англ.)
У этой статьи нет иллюстраций. Вы можете помочь проекту, добавив их. |
Это заготовка статьи. Вы можете помочь проекту, дополнив её. |