Wertebereich//Datentyp



  • @SeppJ sagte in Wertebereich//Datentyp:

    Es gibt auch keine üblichen Maschinendatentypen dafür, sondern es sind auf den meisten Maschinen komplexe Datentypen, die das Verhalten in der Software nachbilden.

    Das stimmt so nicht. Es gibt diese Datentypen nur auf bestimmte CPU Architekturen (IBMs Power und die z Series sowie Fujitsu SPARC CPUs können Dezimalgleitkomma in Hardware), und früher war BCD eigentlich auf jeder Plattform vorhanden. Bei x86 gibt es noch immer in der x87 FPU BCD Formate. Allerdings sollte man die x87 Instruktionen nicht mehr nutzen, weil Intel plant x87 in absehbarer Zukunft los zu werden.



  • @SeppJ sagte in Wertebereich//Datentyp:

    @Tyrdal sagte in Wertebereich//Datentyp:

    @SeppJ sagte in Wertebereich//Datentyp:

    @Tyrdal sagte in Wertebereich//Datentyp:

    Wo kamen denn derartige Forderungen im Original Post vor? Ich habe meine Rahmenbedingungen vorgegeben, weil keine da waren. Und damit gehts.

    Ja, eben. Du hast dir selbst irgendetwas ausgedacht, das gar nicht in der Anforderung steht. Schlimmer noch: Es passt nicht einmal zur Anforderung, denn wie hier im Thread groß diskutiert, sind keiner der Werte 7.12, 100.121, und 0.145612141 überhaupt in einem Binärsystem darstellbar.

    Wieso sollten 712, 100121, und 145612141 nicht binär darstellbar sein?

    Weil 712 nicht 7.12 ist.

    Doch, weil ich festgelegt habe, daß ich den Punkt ignoriere da nicht eindeutig.


  • Mod

    @Tyrdal sagte in Wertebereich//Datentyp:

    Doch, weil ich festgelegt habe, daß ich den Punkt ignoriere da nicht eindeutig.

    Du hast aber ignoriert, dass die Bedeutung des Punktes aus dem Dezimalsystem kommt.



  • @Tyrdal sagte in Wertebereich//Datentyp:

    @SeppJ sagte in Wertebereich//Datentyp:

    @Tyrdal sagte in Wertebereich//Datentyp:

    @SeppJ sagte in Wertebereich//Datentyp:

    @Tyrdal sagte in Wertebereich//Datentyp:

    Wo kamen denn derartige Forderungen im Original Post vor? Ich habe meine Rahmenbedingungen vorgegeben, weil keine da waren. Und damit gehts.

    Ja, eben. Du hast dir selbst irgendetwas ausgedacht, das gar nicht in der Anforderung steht. Schlimmer noch: Es passt nicht einmal zur Anforderung, denn wie hier im Thread groß diskutiert, sind keiner der Werte 7.12, 100.121, und 0.145612141 überhaupt in einem Binärsystem darstellbar.

    Wieso sollten 712, 100121, und 145612141 nicht binär darstellbar sein?

    Weil 712 nicht 7.12 ist.

    Doch, weil ich festgelegt habe, daß ich den Punkt ignoriere da nicht eindeutig.

    🤦🏻♂



  • @SeppJ sagte in Wertebereich//Datentyp:

    @Tyrdal sagte in Wertebereich//Datentyp:

    Doch, weil ich festgelegt habe, daß ich den Punkt ignoriere da nicht eindeutig.

    Du hast aber ignoriert, dass die Bedeutung des Punktes aus dem Dezimalsystem kommt.

    Tut sie das im Deutschen? Und was ist dann das Komma bei der anderen Zahl? Was ist das dann?


  • Mod

    Da kann ich mich nur hustbaer anschließen. Die Aufgabe mag zwar dumm gestellt sein, aber sich dann noch dümmer zu stellen ist nicht gerade mein Stil. Zumal du ja meiner Erklärung, dass 7.12 nicht binär darstellbar wäre, geantwortet hast, nicht der Aufgabe, und daher weißt, was ich mit 7.12 meine und das von mir gemeinte 7.12 ist eben nicht in einem Binärsystem darstellbar.



  • Ich finde die Aufgabe nichtmal so blöd formuliert.
    Also ja, man kann da viel dran kritisieren. Und ja, es wäre schön wenn man von Unterrichtenden erwarten könnte dass sie das besser hinbekommen. Aber eigentlich gibt es für mich nur eine Sache die wirklich nicht klar ist. Und das ist die Frage ob die [u]int_leastN_t Typedefs gesucht sind oder direkt char& Co.

    Wenn man "Datentyp" so interpretiert dass auch Typedef-Namen/Type-Aliase erlaubt sind, dann müsste man wohl mit [u]int_leastN_t antworten. Wenn man "Datentyp" so auslegt dass nur die eingebauten Datentypen erlaubt sind, dann halt mit char& Co. Wobei es dann natürlich strenggenommen auf die Plattform ankommt. Was aber auch mehr akademisch ist. Wenn nix spezielles dabei steht, ist es denke ich nicht ganz verkehrt wenn man davon ausgeht dass int mehr als 16 Bit hat - auch wenn der Standard das nicht verlangt.

    Und dieser Punkt ist auch nur dann ein Problem, wenn der Vortragende ein Arsch ist und/oder der Modus zur Abgabe es nicht erlaubt 1-2 Sätze als Erklärung wo dazuzuschreiben. Weil ansonsten kann man ja einfach beide Varianten mit einer Erklärung hinschreiben.



  • @SeppJ sagte in Wertebereich//Datentyp:

    Zumal du ja meiner Erklärung, dass 7.12 nicht binär darstellbar wäre [...]

    Nicht als Binärbruch darstellbar, wäre glaub ich etwas genauer, oder? (Nennt man das so? Impliziert jedenfalls, dass es nicht mit endlich vielen binären Nachkommastellen darstellbar ist). Ich erwähne das nur, weil meines Wissens bei Decimal Floats die Komponenten wie Mantisse und Exponent eben auch binär gespeichert werden, nur eben die Algorithmen andere sind, mit denen diese Zahlen miteinander verrechnet werden. Das könnte man durchaus eine "binäre Darstellung" nennen, aber ich verstehe schon, dass das nicht das ist, worauf die hinaus wolltest 😉



  • @hustbaer sagte in Wertebereich//Datentyp:

    Und dieser Punkt ist auch nur dann ein Problem, wenn der Vortragende ein Arsch ist und/oder der Modus zur Abgabe es nicht erlaubt 1-2 Sätze als Erklärung wo dazuzuschreiben. Weil ansonsten kann man ja einfach beide Varianten mit einer Erklärung hinschreiben.

    Oder es ist einfach nur Bequemlichkeit und es wird bei der Korrektur lediglich ein stupides "Pattern Matching" gemacht. Sowas konnte ich selbst aber immer in einem nachträglichen Gespräch klären. Es gibt ja durchaus mal mehrere Lösungen, die äquivalent zur geforderten Lösung sind. Oft sogar unendlich viele 😁


  • Mod

    @Finnegan sagte in Wertebereich//Datentyp:

    @SeppJ sagte in Wertebereich//Datentyp:

    Zumal du ja meiner Erklärung, dass 7.12 nicht binär darstellbar wäre [...]

    Nicht als Binärbruch darstellbar, wäre glaub ich etwas genauer, oder? (Nennt man das so? Impliziert jedenfalls, dass es nicht mit endlich vielen binären Nachkommastellen darstellbar ist).

    Korrekt, man könnte es mit einer periodischen Bruchentwicklung darstellen.

    (Eigentlich war mir die Wortwahl egal, aber jetzt habe ich es doch nachgeguckt und möchte es auch weitergeben. Im Deutschen würde man sagen: Jede rationale Zahl ist als Bruch darstellbar, und dieser Bruch ist (in egal welchem Zahlensystem) immer entwickelbar. In manchen Zahlensystemen bricht diese Entwicklung nach endlich vielen Stellen ab (hier z.B. 7.12 im Zehnersystem), ansonsten ist die Bruchentwicklung immer periodisch (z.B. 7.12 im Binärsystem, schreibe ich jetzt aber nicht aus, da selbst die Darstellung mit Periode zu lang ist))


Anmelden zum Antworten