Technopedia Center
PMB University Brochure
Faculty of Engineering and Computer Science
S1 Informatics S1 Information Systems S1 Information Technology S1 Computer Engineering S1 Electrical Engineering S1 Civil Engineering

faculty of Economics and Business
S1 Management S1 Accountancy

Faculty of Letters and Educational Sciences
S1 English literature S1 English language education S1 Mathematics education S1 Sports Education
teknopedia

teknopedia

teknopedia

teknopedia

teknopedia
  • Registerasi
  • Brosur UTI
  • Kip Scholarship Information
  • Performance
  1. Weltenzyklopädie
  2. dc (Unix) – Wikipedia
dc (Unix) – Wikipedia
aus Wikipedia, der freien Enzyklopädie

dc (ein Akronym für desk calculator) ist ein Rechenprogramm für Unix respektive Unix-Derivate. Es nutzt das Prinzip der umgekehrten polnischen Notation und ist eines der ältesten Unix-Tools – sogar älter als die Programmiersprache C. In der Praxis wird bc meistens dc vorgezogen, weil Nutzer Probleme mit der umgekehrten polnischen Notation haben. Das Programm bc setzt in der POSIX-Variante auf dc auf (die GNU-Variante wurde neu entwickelt). Erste Versionen sowohl von dc als auch von bc wurden von Lorinda Cherry bei den Bell Labs entwickelt.

Beispiele

[Bearbeiten | Quelltext bearbeiten]

Anmerkung: das p am Ende der Eingabe steht für print und gibt das Ergebnis, genauer das oberste Element des Stacks, aus. In den Beispielen wird das Ergebnis in der letzten Zeile mit aufgeführt. Alle Leerzeichen und -zeilen mit Ausnahme derer, die zwischen Ziffern stehen, sind optional. Die Syntax mag etwas eigenwillig erscheinen und unterscheidet sich grundlegend von der, die man beispielsweise in einen Taschenrechner eintippen würde (ältere programmierbare Taschenrechner der Firma Hewlett Packard wie z. B. der HP-41C funktionierten auch so). Das liegt daran, dass dc stack-basiert arbeitet. Das erste Beispiel würde verbal übersetzt lauten „schiebe (push) die beiden Elemente sechs und acht auf den Stack, entferne (pop) sie mit dem Multiplikations-Operator, multipliziere sie und schreibe das Ergebnis wieder auf den Stack, gib danach den Inhalt des Stacks auf den Bildschirm aus“.

Multiplikation: Berechnet 6 ⋅ 8 {\displaystyle 6\cdot 8} {\displaystyle 6\cdot 8}

6 8 * p
48

Mehrere Rechenarten kombiniert: Berechnet ( 12 + ( − 3 ) 4 ) 11 − 22 {\displaystyle {\sqrt {\left(12+\left(-3\right)^{4}\right) \over 11}}-22} {\displaystyle {\sqrt {\left(12+\left(-3\right)^{4}\right) \over 11}}-22}:

12 _3 4 ^ + 11 / v 22 - p
-20

Register

[Bearbeiten | Quelltext bearbeiten]

Neben dem Stack können auch Register benutzt werden. Mit s<Name des Registers> (z. B. sc für das Register mit dem Namen c) werden Werte darin gespeichert (s = englisch store ‚speichern‘), mit l<Name des Registers> daraus geholt (l = englisch load ‚laden‘). Das erste Beispiel mit Register:

8 sc 6 lc * p
48

Der einzelne Wert in einem Register ist genau genommen das oberste Element eines ganzen Stack: Sc schiebt einen Wert auf den Stack des Registers c, und Lc entfernt einen Wert von dort (und legt ihn auf den anonymen Stack):

8 Sc 6 Lc * p
48

Mit eckigen Klammern werden Zeichenketten gebildet. Sie können auch in Registern gespeichert werden. Folgendes Beispiel berechnet ( 3 + 1 ) ⋅ 2 {\displaystyle (3+1)\cdot 2} {\displaystyle (3+1)\cdot 2} mit Hilfe eines Registers (m):

[1 + 2 *] sm
3 lm x p
8

Das x führt die Berechnung aus, die im obersten Stack-Wert steht.

Es lassen sich mit dc auch Makros ausführen:

dc -e '[[Gib einen Wert in Meter an oder drücke 0 um zu beenden]psj]
sh[q]sz[lhx?d0=z10k39.370079*.5+0k12~1/rn[ Fuß ]Pn[ Zoll]P10Pdx]dx'

Hier wird nicht mehr die dc-eigene Shell verwendet, sondern das Makro mit dem Schalter -e (für englisch expression ‚Ausdruck‘) an dc übergeben. Das Skript rechnet die Maßeinheit Meter in Fuß und Zoll um.

Weblinks

[Bearbeiten | Quelltext bearbeiten]
  • dc(1): desk calculator – OpenBSD General Commands Manual
  • dc(1): an arbitrary precision calculator – Debian GNU/Linux Ausführbare Programme oder Shell-Befehle Handbuchseite
  • dc, an arbitrary precision calculator, englische Beschreibung der GNU-Variante
  • Detlef Borchers: "He who touched it last, owned it": Zum Tode der Unix-Pionierin Lorinda Cherry. In: Heise online. 17. Februar 2022. Abgerufen am 17. Februar 2022.; Zitat: „Lorinda Cherry war bereits in der ersten Unix-Version vom November 1971 mit dem Programm dc (Desk Calculator) vertreten. Damit begann ihre rege Tätigkeit.“.
Abgerufen von „https://de.teknopedia.teknokrat.ac.id/w/index.php?title=Dc_(Unix)&oldid=242543575“
Kategorien:
  • Freie Mathematik-Software
  • Unix-Software
  • Konkatenative Programmiersprache

  • indonesia
  • Polski
  • العربية
  • Deutsch
  • English
  • Español
  • Français
  • Italiano
  • مصرى
  • Nederlands
  • 日本語
  • Português
  • Sinugboanong Binisaya
  • Svenska
  • Українська
  • Tiếng Việt
  • Winaray
  • 中文
  • Русский
Sunting pranala
Pusat Layanan

UNIVERSITAS TEKNOKRAT INDONESIA | ASEAN's Best Private University
Jl. ZA. Pagar Alam No.9 -11, Labuhan Ratu, Kec. Kedaton, Kota Bandar Lampung, Lampung 35132
Phone: (0721) 702022
Email: pmb@teknokrat.ac.id