www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Taschenrechner Eigenbau?


Autor: paUl (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

warum find ich im Netz nix zu selbstgebauten/umgebauten Taschenrechnern 
basierend auf einem Mikrocontroller? Gesucht und gesucht, aber nichts 
dergleichen gefunden.. Nur lande ich immer wieder bei von haus aus 
programmierbaren 100€-Rechnern.. Kennt ihr zufällig was? Ich such 
Projektergebnisse von leuten die das auch gemacht haben..

Autor: Helmut S. (helmuts)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
paUl schrieb:
> Hi,
>
> warum find ich im Netz nix zu selbstgebauten/umgebauten Taschenrechnern
> basierend auf einem Mikrocontroller? Gesucht und gesucht, aber nichts
> dergleichen gefunden.. Nur lande ich immer wieder bei von haus aus
> programmierbaren 100€-Rechnern.. Kennt ihr zufällig was? Ich such
> Projektergebnisse von leuten die das auch gemacht haben..

Weil es sich finanziell nie lohnen wird. Kostet ungefähr das Zehnfache, 
sieht dann immer noch gebastelt aus und "frisst" unendlich viel 
Freizeit.
Ein Beispiel:
http://www.elektor.de/products/books/e-books/progr...

Autor: Johann L. (gjlayde) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Einfach mal Tante Guundel fragen:

http://elektronik-kompendium.de/public/arnerossius...

Autor: paUl (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
das erste hab ich schon gesehn, aber das zweite noch nich.. sieht sehr 
interessant aus, vielen dank ;)

Autor: paUl (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hm.. is in assembler.. C wär mir lieber.

vielleicht ließe sich auch einfach ein bestehender taschenrechner 
erweitern, so dass ich zwischen original-taschenrechner und 
mikrocontroller wählen kann..

wie sorg ich dann da dafür, dass es keine probleme gibt? wenn ich den 
mikrocontroller aktivier, is ja nich automatisch alles von der 
originalbeschaltung getrennt..

Autor: Ben ■. (bloxx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
http://www.calcwatch.com/index.html

um es mal mit der Minituarisierung auf die Spitze zu treiben ;-)

■

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
paUl schrieb:
> hm.. is in assembler.. C wär mir lieber.

Na ja.
In C ist das aber nicht wirklich eine Herausforderung

Autor: Marcus Woletz (mwoletz)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Helmut S. schrieb:
[...]
>
> Weil es sich finanziell nie lohnen wird. Kostet ungefähr das Zehnfache,
> sieht dann immer noch gebastelt aus und "frisst" unendlich viel
> Freizeit.

Auch Tennisspielen wird sich in den meisten Fällen finanziell nie 
lohnen, man landet auf der Weltrangliste höchstens auf Platz 100000 und 
Tennisspielen frisst unendlich viel Freizeit.

Schon meine Eltern haben so argumentiert wie Du. Ich frage mich bis 
heute, warum technische Hobbies immer irgend wie ökonomisch bewertet 
werden. Es sind Hobbies! Was ist so schwer daran zu verstehen. Wenn 
jemand in seiner Freizeit einen Taschenrechner selbst entwickeln möchte 
- warum nicht? Andere bauen Flaschenschiffe, speieln Tennis, Golf, 
Handball, Fußball, motzen ihren Golf oder Dreier-BMW mit zigtausenden 
von Euro auf. Das wird akzeptiert.

> Ein Beispiel:
> 
http://www.elektor.de/products/books/e-books/progr...

ciao

Marcus

Autor: Marcus Woletz (mwoletz)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Marcus Woletz schrieb:
[...]
> heute, warum technische Hobbies immer irgend wie ökonomisch bewertet

ersetze "teschnische Hobbies" durch "Elektronikhobby"

und ergänze Liste akzeptierter Geldschlucker um "Modellbahn", 
"Modellflug" etc. auch seine Klamotten selbst zu stricken ist zumeist 
ökonomisch nicht sinnvoll ;-)

[...]

ciao

Marcus

Autor: STK500-Besitzer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Wenn jemand in seiner Freizeit einen Taschenrechner selbst entwickeln möchte
>- warum nicht?

Weil es in C ein Kinderspiel ist, also keine wirkliche Herausforderung.
C lieferet schon eine Menge mathematischer Funktionen mit.
Wenn man die in Assembler realisiert, ist das schon was anderes.
Willst du in einer Woche das Ding komplett fertig haben?

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Marcus Woletz schrieb:
> Helmut S. schrieb:
> [...]
>>
>> Weil es sich finanziell nie lohnen wird. Kostet ungefähr das Zehnfache,
>> sieht dann immer noch gebastelt aus und "frisst" unendlich viel
>> Freizeit.
>
> Auch Tennisspielen wird sich in den meisten Fällen finanziell nie
> lohnen, man landet auf der Weltrangliste höchstens auf Platz 100000 und
> Tennisspielen frisst unendlich viel Freizeit.

Schon richtig.
Aber gerade bei Taschenrechner und Bastlern ist die Situation doch die: 
Irgendwie sinnvoll soll die Bastelei ja auch sein. Und es macht nun mal 
wenig Sinn ein Gerät komplett aufzubauen (mit Gehäuse u.dgl.), das du 
bei Tschibo um 1 Euro 80 kaufen kannst oder zur Kilopackung Kaffe als 
Werbegeschenk mit dazubekommst.

Das Interessante bei einem Taschenrechner ist ja letztendlich die 
Programmierung. Und die kann man genausogut auch auf einem PC ohne 
irgendwelche externe Hardware machen. Sooo interessant sind 
Matrixtastatur und LCD Anzeige dann auch wieder nicht, dass ein 
Taschenrechner ein wochenendfüllendes Thema wäre. Da gibt es 
Interessanteres.

Und deshalb (meine Meinung) findet im Web relativ wenig zu diesem Thema.

Autor: paUl (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
das ganze soll natürlich einen sinn haben..
ich will formeln speichern können und neben normalen rechnungen auch
einfach formeln ausfüllen können..

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
OK
Was hindert dich daran?

Mach dir ein Konzept und programmiere es.

Autor: Platinenschwenker .. (platinenschwenker)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> paUl schrieb:
>> das ganze soll natürlich einen sinn haben..
>> ich will formeln speichern können und neben normalen rechnungen auch
>> einfach formeln ausfüllen können..

Mal im ernst, für sowas hat man doch seinen guten alten HP48xx oder? :)

Autor: paUl (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
so ein riesen taschenrechner fällt vielleicht ein kleines bisschen auf 
;)

Autor: hst (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn man aber dafür sorgen will, dass Rundungsfehler durch 
Fließkommarechnung nicht auffallen, wird das ganze nicht mehr so 
trivial. Das schafft noch nicht mal Excel, obwohl es da durch hohe 
Rechenleistung und um ein vielfaches leichter wäre, nur mit Integer zu 
rechnen.


Man trage in eine Spalte untereinander folgende vier Zahlen ein:

0,05
-0,07
0,02
0

Nun addiere man diese Zahlen. Das richtige Ergebnis ist 0.

OpenOffice.org macht es übrigens richtig. Nein, die rechnen intern auch 
nicht mit Integer aber die verstehen es die Rundungsfehler nicht 
erscheinen zu lassen.

Autor: heinz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das ist doch ein schöne Projekt!
Da bekomme ich auch fast Lust was zu machen. Einen HP/TI/Casio kann ja 
jeder auf dem Schreibtisch liegen haben. Aber ein selbstbau Rechner, am 
besten ohne gehäuse, macht doch mal eindruck auf die Kollegen/Kunden ;-)

Auch in C kann man sich da schön mit beschäftigen. Schon einen 
vernünftigen Parser für algebraische Ausdrücke zu schreiben (ohne 
inspiration im Netz!!!) ist ne nette beschäftigung.

Autor: Thomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Soooo einfach ist das auch in C nicht. Zumindest wenn man . vor -, 
Funktionen, Klammern und ähnliches machen will.

Autor: Marcus Woletz (mwoletz)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Karl heinz Buchegger schrieb:
[...]
> Schon richtig.
> Aber gerade bei Taschenrechner und Bastlern ist die Situation doch die:
> Irgendwie sinnvoll soll die Bastelei ja auch sein. Und es macht nun mal
> wenig Sinn ein Gerät komplett aufzubauen (mit Gehäuse u.dgl.), das du
> bei Tschibo um 1 Euro 80 kaufen kannst oder zur Kilopackung Kaffe als
> Werbegeschenk mit dazubekommst.

Im Prinzip stimme ich Dir zu. Allerdings wird der OP schon einen Anreiz 
haben, das durchzuziehen. Welcher Anreiz das auch immer sein mag. Ich 
reagiere inzwischen leider ein wenig verschnupft, weil einfach immer mit 
der ökonomische Keule draufgehauen wird. So gesehen müssten 99,9% aller 
Elektronikbasteleien sofort eingestampft werden. Vielleicht ist es genau 
diese Einstellung, die den massiven Einbruch bei den Elektronikbastlern 
in den 90er-Jahren bewrikt hat.

[...]

ciao

Marcus

Autor: Platinenschwenker .. (platinenschwenker)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
heinz schrieb:
> Das ist doch ein schöne Projekt!
> Da bekomme ich auch fast Lust was zu machen. Einen HP/TI/Casio kann ja
> jeder auf dem Schreibtisch liegen haben. Aber ein selbstbau Rechner, am
> besten ohne gehäuse, macht doch mal eindruck auf die Kollegen/Kunden ;-)

Ne nix "ohne Gehäuse", wenn schon dann schönes Acrylglasgehäuse. ;)

und schöne Tasten ausdenken ..

Autor: paUl (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
und wenn ich da an die ganzen funktionen meines jetzigen taschenrechners 
denk.. rechnen in anderen systemen, etc..

wie könnte ich denn eine umschaltung zwischen taschenrechnerelektronik 
und eigenem mikrocontroller realisieren? das ganze teilt sich ja dann 
teile der schaltung und ist damit ja nicht vollständig voneinander 
getrennt..

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bau ein extra Gerät auf.
Tastatur und Anzeige mitbenutzen ist den Aufwand nicht wert und sind 
nicht die großen Kostenfaktoren.

Autor: Marcus Woletz (mwoletz)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Karl heinz Buchegger schrieb:
[...]
> Das Interessante bei einem Taschenrechner ist ja letztendlich die
> Programmierung. Und die kann man genausogut auch auf einem PC ohne
> irgendwelche externe Hardware machen.

Elektronikbasteln kann man dank immer ausgefeilterer 
Simulationsprogramme (ich meine hier nicht unbedingt SPICE), mit denen 
man das Elektronikbasteln komplett auf den PC verlagern kann. Trotzdem 
sind das einfach nur Trockenübungen. Sowas würde mich nie reizen. Einzig 
Spice ist interessant, um ein bestimmtes Verhalten von Teilen einer 
Schaltung zu testen, bevor man dann alles in Hardware gießt. Aber rein 
virtuell am PC zu experimentieren, würe mir einfach zu langweilig.

[...]

ciao

Marcus

Autor: paUl (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wär natürlich auch eine idee.. allerdings muss ich dann 2 geräte mit mir 
rumschleppen..

Autor: Jadeclaw Dinosaur (jadeclaw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
STK500-Besitzer schrieb:
>>Wenn jemand in seiner Freizeit einen Taschenrechner selbst entwickeln möchte
>>- warum nicht?
>
> Weil es in C ein Kinderspiel ist, also keine wirkliche Herausforderung.
> C liefert schon eine Menge mathematischer Funktionen mit.
Ist es leider nicht. Der Grund: der heißgeliebte AVR-GCC macht leider 
nur 32 bit Genauigkeit. Also müssen alle Mathefunktionen zu Fuß neu 
programmiert werden. Und wenn mehr als nur die 4 Grundrechenarten 
gefordert sind, ist das auch in C eine Herausforderung.

Gruß
Jadeclaw.

Autor: Helmut Lenzen (helmi1)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Soooo einfach ist das auch in C nicht. Zumindest wenn man . vor -,
>Funktionen, Klammern und ähnliches machen will.

Und  soooo kompliziert nun auch wieder nicht. Einfach ein bisschen 
rekursiven Code und das wars auch schon. BNF lässt grüssen.

Gruss Helmi

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Marcus Woletz schrieb:

> Schaltung zu testen, bevor man dann alles in Hardware gießt. Aber rein
> virtuell am PC zu experimentieren, würe mir einfach zu langweilig.

Ich rede auch nicht von der Elektronik, sondern vom C-Programm :-)

Autor: Stefan Salewski (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Marcus Woletz schrieb:

>Es sind Hobbies! Was ist so schwer daran zu verstehen. Wenn
>jemand in seiner Freizeit einen Taschenrechner selbst entwickeln möchte
>- warum nicht?

Auch wenn ich den Beitrag des Threadstarters nur überflogen habe:

Er will nicht ENTWICKELN -- er will irgendetwas abkupfern, was sich ein 
anderer irgendwo anders abgekupfert hat. Und wie Herr Buchegger schon 
bemerke, in C ist das eh recht trivial, jedenfalls wenn man Bibliotheken 
anderer Leute verwendet. Na ja, immer noch besser als Videos gucken...

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jadeclaw Dinosaur schrieb:

> Ist es leider nicht. Der Grund: der heißgeliebte AVR-GCC macht leider
> nur 32 bit Genauigkeit. Also müssen alle Mathefunktionen zu Fuß neu
> programmiert werden. Und wenn mehr als nur die 4 Grundrechenarten
> gefordert sind, ist das auch in C eine Herausforderung.

Ich glaube, dass zumindest früher viele Taschenrechner BCD Arithmetik 
mit Mantisse und Exponent gemacht haben. Dazu noch 2 oder 3 nicht 
angezeigte Schattenstellen um die Rundungsfehler im Zaum zu halten.
Hast du erst mal die 4 Grundrechnungsarten, gehen die restlichen 
Funktionen nach dem Muster: Im Web ein Verfahren suchen, mit dem man das 
Gewünschte mit den Grundrechenarten bzw. den Funktionen die man schon 
hat berechnen kann.

Ist grundsätzlich eine schöne Übung.

> Er will nicht ENTWICKELN -- er will irgendetwas abkupfern,
> was sich ein anderer irgendwo anders abgekupfert hat

He, he.
Persönlich denke ich, dass wir jetzt der Sache schon näher kommen :-)

Autor: Marcus Woletz (mwoletz)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Helmut,

Helmut Lenzen schrieb:
>>Soooo einfach ist das auch in C nicht. Zumindest wenn man . vor -,
>>Funktionen, Klammern und ähnliches machen will.
>
> Und  soooo kompliziert nun auch wieder nicht. Einfach ein bisschen
> rekursiven Code und das wars auch schon. BNF lässt grüssen.

klar, deshalb füllt das Drachenbuch ja nur weit über tausend Seiten. OK, 
ein recursive descent Parser ist nicht extrem kompliziert, aber man muss 
sich schon ein klein wenig einlesen, um das Prinzip zu vrstehen.

Nur weil man den Parser in BNF notieren kann, heißt das noch lange 
nicht, dass man das Ding dann auch als Programm umzusetzen vermag. Und 
einfach durch bison etc. durchjagen dürfte mangels Speicherplatz im AVR 
auch ein wenig eng werden, wenn auch noch anderes Zeug reinsoll.

>
> Gruss Helmi

ciao

Marcus

Autor: Marcus Woletz (mwoletz)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Stefan Salewski schrieb:

[...]
> Er will nicht ENTWICKELN -- er will irgendetwas abkupfern, was sich ein

na ja, das ist doch von der ökonomischen Seite her gar nicht so verkehrt 
;-)

[...]

ciao

Marcus

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Marcus Woletz schrieb:

> klar, deshalb füllt das Drachenbuch ja nur weit über tausend Seiten. OK,
> ein recursive descent Parser ist nicht extrem kompliziert, aber man muss
> sich schon ein klein wenig einlesen, um das Prinzip zu vrstehen.

Schon klar.
Nur muss man nicht die komplette Theorie Compilerbau pauken um einen 
Punkt vor Strich Taschenrechner zu bauen.

Im C++ Standardwerk vmo Stroustoup ist einer drinnen. Der Code ist ca. 
eine halbe Buchseite groß (müsste jetzt nachschlagen)

> Nur weil man den Parser in BNF notieren kann, heißt das noch lange
> nicht, dass man das Ding dann auch als Programm umzusetzen vermag. Und
> einfach durch bison etc. durchjagen dürfte mangels Speicherplatz im AVR
> auch ein wenig eng werden, wenn auch noch anderes Zeug reinsoll.

Es gibt auch Generatoren die einen rekursive-decent-Parser erzeugen.

Autor: yalu (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ein Parsergenerator (egal nach welchem Prinzip er arbeitet) ist doch mit
Kanonen auf Taschenrechner geschossen, zumal ein damit generierter
Parser (aber auch ein handgeschriebener RD-Parser) normalerweise dafür
ausgelegt ist, einen kompletten Term vorgesetzt zu bekommen, der dann
ohne weiteren Benutzereingriff zu einem Ergebnis oder einer Fehlermel-
dung verarbeitet wird.

Ein Taschenrechner ist aber im Vergleich zu einem typischen Compiler und
sogar einem Basic-Interpreter ein maximal interaktives Instrument. Man
kann bereits während der Eingabe Zwischenergebnisse sehen und teilweise
verarbeitete Eingaben bei Bedarf noch korrigieren. Ein eingegebener Term
ist nie abgeschlossen, da jederzeit weitere Operationen angehängt werden
können. Eine strenge Syntax gibt es bei einem Taschenrechner auch nicht.
Zumindest habe ich noch bei keinem der nach klassischem Muster arbeiten-
den Modelle die Meldung "Syntax Error" auf dem Display gesehen¹. Fast
jede denkbare Reihenfolge von Tastendrücken hat eine mehr oder weniger
sinnvolle Bedeutung. Im Zweifelsfall werden einzelne Tastendrücke eben
einfach ignoriert.

Bei der Implementierung einer Taschenrechnersoftware sollte man deswegen
weniger in Grammatiken, sondern direkt in Aktionen der Ausführungsein-
heit denken, die ein Gebilde ähnlich einem Kellerautomat ist. Man hat
also einen Zustand (repräsentiert durch eine oder mehrere Systemvariab-
len) und einen Stack für Zwischenergebnisse und halbfertige Operationen.
Man überlegt sich für jede einzelne Taste (so arg viele gibt es ja nicht
davon) in Abhängigkeit vom aktuellen Zustand und den obersten Stack-Ele-
menten eine Aktion, die in geeigneter Weise den Zustand und den Stack
verändert und den Anzeigeninhalt modifiziert.

Das Vorgehen hierfür ist ziemlich geradlinig und nicht besonders schwer,
wenn man sich erst einmal im Klaren darüber ist, was der Rechner hinter-
her im Detail tun soll. Da man aber bzgl. der wirklichen Details anfangs
meist nur eine schwammige Vorstellung hat, hilft es, einen bereits
existierenden Taschenrechner daneben zu legen und ggf. auszuprobieren,
wie dieser in bestimmten Situationen reagiert.

Kümmert man sich um diese Details nicht, hat man hinterher zwar ein
Gerät, das vielleicht richtig rechnet, aber trotzdem nicht das Look-
and-Feel hat, das man von einem "richtigen" Taschenrechner unbewusst
gewohnt ist.

So ein Taschenrechner ist sicher ein lustiges und nicht ganz nutzloses
Projekt, wenn man ein paar Spezialfunktionen einbaut, die in gewöhn-
lichen Taschenrechnern nicht findet, weil sie von der Masse der Käufer
nicht gewünscht werden. Ein Beispiel, was mir gerade so einfällt, wäre
ein fünfter Infixoperator (neben +, -, * und /), der x*y/(x+y), also die
Parallelschaltung von Widerständen oder die Reihenschaltung von Konden-
satoren berechnet. Oder gibt es das vielleicht schon?

Man kann zwar viele fehlende Funktionen auch mit einem programmierbaren
Rechner erschlagen, nur sind sie dann meist nicht so leicht zugänglich,
als wenn man dafür dedizierte Tasten an passender Stelle auf dem Bedien-
feld hat.


¹) Bei einigen neumodischen Geräten mag das anders sein, da diese
   teilweise eingabezeilenorientiert (also ähnlich wie ein Basic-
   Interpreter) arbeiten.

Autor: gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"CORDIC" (s. Wikipedia) lautet das Zauberwort, wenn es darum geht, 
höhere mathematische Funktionen in den kleinstmöglichen Programmraum zu 
quetschen...

...wenn man damit umzugehen versteht, bringt man so den kompletten Code 
für arithmetische, logarithmische und trigonometrische 
Gleitkomma-Funktionen in weniger als 8000 Bit (richtig gelesen... 
...nicht etwa Byte ;-) ) unter. Beispiel: "HP-35" (s. Wikipedia).

Da bleibt selbst in kleineren PIC- und Atmel-Prozessoren noch viel Platz 
für Nebenjobs wie Tastatur-Scannen und Display-Multiplexen.

MfG

Autor: Avr Nix (avrnix) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ein Link zum Link:
 http://comwebnet.weimars.net/forum/showthread.php?tid=395
Sprechender Taschenrechner

Und in den 90zigern des letzten Jahrhundert ist das Elektronikbasteln 
zurückgegangen durch den aufkommen des PCs, man fand halt ein nettes 
"Spielzeug".

Autor: David (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>>Autor: hst (Gast)

>>Wenn man aber dafür sorgen will, dass Rundungsfehler durch
>>Fließkommarechnung nicht auffallen, wird das ganze nicht mehr so
>>trivial. Das schafft noch nicht mal Excel, obwohl es da durch hohe
>>Rechenleistung und um ein vielfaches leichter wäre, nur mit Integer zu
>>rechnen.
>>Man trage in eine Spalte untereinander folgende vier Zahlen ein:
>>0,05
>>-0,07
>>0,02
>>0
>>Nun addiere man diese Zahlen. Das richtige Ergebnis ist 0.

Bei mir macht da excel richtig...

Autor: Daniel R. (drd)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bei mir auch, wenn ich die Ergebniszelle als Zahl formatiere. Ab der 18. 
Nachkommastelle kommt aber der Rundungsfehler.

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Bei mir macht da excel richtig

Du hast wahrscheinlich vergessen, die letzte 0 zu addieren!

Autor: Christian H. (netzwanze) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
bc 1.06
Copyright 1991-1994, 1997, 1998, 2000 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'.
0.05-0.07+0.02+0
= 0 <korrekt>
0.000000000000000000000000000000000000000000000000000005+1
= 1.000000000000000000000000000000000000000000000000000005 (korrekt)

;-)

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wem ein normaler Taschenrechner zu langweilig ist: man erweitere ihn um 
CAS-Funktionen... bis man das Niveau eines modernen programmierbaren 
CAS-Rechners erreicht hat geht einiges an Zeit ins Land.

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Christian H. schrieb:
> bc 1.06
> Copyright 1991-1994, 1997, 1998, 2000 Free Software Foundation, Inc.
> This is free software with ABSOLUTELY NO WARRANTY.
> For details type `warranty'.
> 0.05-0.07+0.02+0
> = 0 <korrekt>
> 0.000000000000000000000000000000000000000000000000000005+1
> = 1.000000000000000000000000000000000000000000000000000005 (korrekt)
>

Wer an Floating Point Programmierung mit der Annahme rangeht, dass diese 
wie Mathematik funktioniert, hat schon verloren.

http://www.physics.ohio-state.edu/~dws/grouplinks/...

Autor: TA (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mann o mann, so viele Stellen, mein Adler 88T hat nur 9.

Autor: Claudio H. (bastelfinger)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe mal einen gebaut, hatte auch eine Webseite darüber, aber mit 
Ende des Studiums wurde die abgeschaltet.
Ich habe einen wissenschaftlichen Taschenrechner auf Basis des HP-45 
gebaut, inklusive Stoppuhr, Hardware war ein PIC 16F877A. Das Projekt 
habe ich noch, falls Interesse besteht. Funktioniert allerdings in RPN, 
dafür mit BCD-Arithmetik, alle wissenschaftlichen Funktionen etc.

Falls du einen eigenen Rechner bauen willst, noch ein Tipp zum 
Operatorvorrang: Lies dir mal die Flowcharts (Fig 1 und Fig 2) hier 
durch:
http://www.hpmuseum.org/journals/71a.htm

Autor: Michael L. (michaelx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Helmut Lenzen schrieb:
>>Soooo einfach ist das auch in C nicht. Zumindest wenn man . vor -,
>>Funktionen, Klammern und ähnliches machen will.
>
> Und  soooo kompliziert nun auch wieder nicht. Einfach ein bisschen
> rekursiven Code und das wars auch schon. BNF lässt grüssen.

Warum soll man da selbst was programmieren? Dafür gibt es LEX und YACC. 
Ich habe vor Jahren selbst mal einen Rechner für die Kommandozeile damit 
realisiert, hat richtig Spaß gemacht.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.