mark.zlatoust.ru Послать письмо Webmaster-у Web-Master © Бернадинер Марк 

Златоуст.Ru

 

 

      DC(1)                                                     DC(1)

      НАЗВАНИЕ
              dc - настольный калькулятор

      СИНТАКСИС
              dc  [файл]

      ОПИСАНИЕ
              Dc - пакет для арифметических вычислений с произвольной
              точностью. Обычно он  оперирует  в  десятичной  системе
              счисления с целыми числами, однако можно задать системы
              счисления для ввода и вывода, а также точность вычисле-
              ний. Общая структура dc - стековый калькулятор, исполь-
              зующий обратную   польскую  запись.  [См.  также  bc(1)
              - препроцессор для dc, поддерживающий инфиксную нотацию
              и  C-подобный синтаксис.] Если аргумент указан, то сна-
              чала ввод производится из файла, а потом со стандартно-
              го ввода.

              Dc распознает следующие конструкции:

              число
                   Значение числа помещается в стек. Число  -  непре-
                   рывная цепочка цифр 0-9. В начале ее может  стоять
                   знак подчеркивания _ для ввода отрицательного чис-
                   ла. Число может содержать десятичную точку.

              +  -  /  *  %  ^
                   Верхние два числа стека складываются (+),  вычита-
                   ются (-), умножаются (*), делятся (/), берется ос-
                   таток (%) или выполняется  возведение  в  степень.
                   Оба операнда извлекаются из стека и результат  по-
                   мещается обратно в стек. Дробная часть  показателя
                   степени игнорируется.

              sx   Извлекается вершина стека и помещается в регистр с
                   именем  x,  где x - любой символ. Если конструкция
                   имеет вид Sx, то x рассматривается как стек, в ко-
                   торый и помещается извлеченное значение.

              lx   Значение,  хранящееся  в  регистре x, помещается в
                   стек. Регистр x не изменяется. Изначально все  ре-
                   гистры  инициализируются  нулем.  Если конструкция
                   имеет вид Lx, то x рассматривается как  стек,  его
                   вершина извлекается и помещается в главный стек.

              d    Вершина стека удваивается.

              p    Выводится вершина стека (без удаления из стека).

              P    Вершина стека трактуется как цепочка символов, пе-
                   чатается и удаляется из стека.

              f    Выводятся все элементы стека (без удаления).

              q    Завершает работу программы. При выполнении цепочки
                   символов уровень рекурсии уменьшается на два.

              Q    Завершает работу программы. Вершина стека извлека-
                   ется и уровень рекурсии уменьшается на  полученное
                   значение.

              x    Вершина стека трактуется как цепочка символов, со-
                   держащая dc-команды, и выполняется.

              X    Вершина стека заменяется  количеством  цифр  в  ее
                   дробной части.

              [..] Цепочка символов, заключенная в скобки, помещается
                   в вершину стека.

              x  =x
                   Два верхних элемента стека извлекаются и сравнива-
                   ются. Если они удовлетворяют  указанному  условию,
                   то содержимое регистра x рассматривается  как  ко-
                   манда dc и выполняется.

              v    Верхний элемент стека заменяется квадратным корнем
                   из него. Если он имел дробную часть, то она учиты-
                   вается; в  противном  случае  точность  вычислений
                   (см. команду k) игнорируется.

              !    Остаток  строки   интерпретируется   как   команда
                   shell'а.

              c    Очистка стека.

              i    Вершина стека извлекается и используется как осно-
                   вание системы счисления при вводе. Команда I поме-
                   щает  используемое  при  вводе  основание  системы
                   счисления в вершину стека.

              o    Вершина стека извлекается и используется как осно-
                   вание системы счисления при выводе. Команда O  по-
                   мещает  используемое  при выводе основание системы
                   счисления в вершину стека.

              k    Извлекается вершина стека;  она  используется  для
                   задания точности вычислений: количества  знаков  в
                   дробной части при выводе и при выполнении  умноже-
                   ния, деления и возведения в степень.

              z    В стек помещается количество его элементов.

              Z    Число в вершине стека заменяется его  длиной  (без
                   учета десятичной точки и знака минус).

              ?    Со стандартного ввода вводится одна строка  и  ис-
                   полняется.

              ;:   Используются утилитой bc(1) для операций с  масси-
                   вами.

      ПРИМЕР
              Вывести факториалы первых 10 натуральных чисел:

                   [la1+dsa*pla10>y]sy
                   0sa1
                   lyx

      СМ. ТАКЖЕ
              bc(1).

      ДИАГНОСТИКА
              x is unimplemented
                   (где x - восьмеричное число). Операция, обозначен-
                   ная символом с кодом x, не реализована.

              stack empty
                   В стеке меньше элементов, чем требуется.

              Out space
                   Слишком длинное число.

              Out of headers
                   Слишком много чисел приходится хранить одновремен-
                   но.

              Out of pushdown
                   Стек переполнен.

              Nesting depth
                   Слишком  большой  уровень вложенности при выполне-
                   нии.



 

 

Бернадинер Марк Абрамович

Мое резюме

Компьютерная страничка

Ресурсы сети

Фотоальбом

 

 

 

mark.zlatoust.ru Послать письмо Webmaster-у Web-Master © Бернадинер Марк