Schwarzes Hamburg

  • 10 Mai 2024, 19:55:20
  • Willkommen Gast
Bitte logg dich ein oder registriere dich.

Einloggen mit Benutzername, Passwort und Sitzungslänge
Erweiterte Suche  

Autor Thema: (Technische) Dinge, die einem das Leben schwer machen...  (Gelesen 28218 mal)

Franky

  • > 1000 Posts
  • ***
  • Beiträge: 1773
    • bla
Re: (Technische) Dinge, die einem das Leben schwer machen...
« Antwort #105 am: 28 Dezember 2008, 14:07:04 »

Allgemein: Computer lösen Probleme, die man sonst nicht hätte ;)
Gespeichert
Excuse me while I kill myself.

(http://www.cosgan.de/images/smilie/konfus/g050.gif)

Thomas

  • > 10.000 Posts
  • ******
  • Beiträge: 15436
  • Industrie und Technik
Re: (Technische) Dinge, die einem das Leben schwer machen...
« Antwort #106 am: 28 Dezember 2008, 14:38:36 »

bitweise Operatoren sind ne Krankheit. Die machen mir wirklich das Leben schwer.  >:(
Wieso, das ist doch ganz simpel ?
Gespeichert
„Das ist nur Ihre Meinung“

CommanderChaos

  • > 5000 Posts
  • *****
  • Beiträge: 5314
  • Der Name ist Programm.
Re: (Technische) Dinge, die einem das Leben schwer machen...
« Antwort #107 am: 28 Dezember 2008, 15:07:08 »

bitweise Operatoren sind ne Krankheit. Die machen mir wirklich das Leben schwer.  >:(
Wieso, das ist doch ganz simpel ?
Sein oder nicht Sein, das ist 255.
edit. im original: 2b OR NOT 2b = ff
« Letzte Änderung: 28 Dezember 2008, 15:53:52 von CommanderChaos »
Gespeichert
Be Strong!
Be Pleasant.
Be Unwavering!
Be Smart.
Be Awesome!
Awareness! It was under ‘E’!
(from Fallout: Equestria by Kkat)
http://www.graphicguestbook.com/madd1n - Mal mir ein Bild!
Mein Senf: http://twitter.com/chaoscommander https://strikeslipvault.org

messie

  • > 10.000 Posts
  • ******
  • Beiträge: 15377
  • hrhrhr
Re: (Technische) Dinge, die einem das Leben schwer machen...
« Antwort #108 am: 28 Dezember 2008, 15:25:05 »

bitweise Operatoren sind ne Krankheit. Die machen mir wirklich das Leben schwer.  >:(
Wieso, das ist doch ganz simpel ?

Für dich.
Ich krieg hier mit diesem Rechts-Shift und Links-Shift und diesem Einerkomplement nochmal die Krise ... geht mir nicht ins Hirn wo man die braucht und wie man sie dann einsetzt ... *grummel*  >:(
Gespeichert
Nichts ist kostenlos im Leben - außer der Tod, und nicht mal der, denn der kostet dich das Leben.

t_g

  • > 2500 Posts
  • ****
  • Beiträge: 3326
  • Panta rhei
    • toxic_garden
Re: (Technische) Dinge, die einem das Leben schwer machen...
« Antwort #109 am: 28 Dezember 2008, 15:30:05 »

Ich krieg hier mit diesem Rechts-Shift und Links-Shift und diesem Einerkomplement nochmal die Krise ... geht mir nicht ins Hirn wo man die braucht und wie man sie dann einsetzt ... *grummel*  >:(
man braucht einfach nur die richtigen Eselsbrücken. Würde man Thomas´ Meinungen mit dem Rest des Forums bitweise XOR verknüpfen, hätte man eine knorke, durchgehende 1er-Linie. :D
Gespeichert

Thomas

  • > 10.000 Posts
  • ******
  • Beiträge: 15436
  • Industrie und Technik
Re: (Technische) Dinge, die einem das Leben schwer machen...
« Antwort #110 am: 28 Dezember 2008, 17:53:26 »

bitweise Operatoren sind ne Krankheit. Die machen mir wirklich das Leben schwer.  >:(
Wieso, das ist doch ganz simpel ?

Für dich.
Da ich aus der Elektronik komme, und diese ganzen logischen Gattergeschichten in Hardwareform in und auswendig kannte, mag das stimmen  :)

Zitat von: messie
Ich krieg hier mit diesem Rechts-Shift und Links-Shift...
Wieso, du hast 'ne Bitfolge, in der du einfach jede Stelle um eins nach rechts bzw. links verschiebst.Wie der Name schon sagt.

Zitat von: messie
und diesem Einerkomplement
Auch simpel, aus jeder eins wird eine null, aus jeder null eine eins  ;)

Zitat von: messie
geht mir nicht ins Hirn wo man die braucht und wie man sie dann einsetzt ... *grummel*  >:(
Also solange man nicht mit Hardwareprogrammierung zu tun hat, wüßte ich jetzt auch nicht auf Anhieb, wozu man das ganze Logikzeugs brauchen würde.

Zitat von: t_g
man braucht einfach nur die richtigen Eselsbrücken. Würde man Thomas´ Meinungen mit dem Rest des Forums bitweise XOR verknüpfen, hätte man eine knorke, durchgehende 1er-Linie.  :D
Das wäre dann eine komplizierte Eselsbrücke.Aber Inhaltlich richtig, ich bin halt total individuell  ;)
« Letzte Änderung: 28 Dezember 2008, 18:05:53 von Thomas »
Gespeichert
„Das ist nur Ihre Meinung“

t_g

  • > 2500 Posts
  • ****
  • Beiträge: 3326
  • Panta rhei
    • toxic_garden
Re: (Technische) Dinge, die einem das Leben schwer machen...
« Antwort #111 am: 28 Dezember 2008, 18:37:08 »

Zitat von: messie
geht mir nicht ins Hirn wo man die braucht und wie man sie dann einsetzt ... *grummel*  >:(
Also solange man nicht mit Hardwareprogrammierung zu tun hat, wüßte ich jetzt auch nicht auf Anhieb, wozu man das ganze Logikzeugs brauchen würde.
Naja, wie "Hardware-nah" Assembler-Programmierung jetzt ist, ist sicher auslegungssache, aber da kann man es zum Beispiel ganz hervorragend gebrauchen. Und in zich anderen Programmiersprachen auch.
Gespeichert

Thomas

  • > 10.000 Posts
  • ******
  • Beiträge: 15436
  • Industrie und Technik
Re: (Technische) Dinge, die einem das Leben schwer machen...
« Antwort #112 am: 28 Dezember 2008, 18:55:12 »

Zitat von: messie
geht mir nicht ins Hirn wo man die braucht und wie man sie dann einsetzt ... *grummel*  >:(
Also solange man nicht mit Hardwareprogrammierung zu tun hat, wüßte ich jetzt auch nicht auf Anhieb, wozu man das ganze Logikzeugs brauchen würde.
Naja, wie "Hardware-nah" Assembler-Programmierung jetzt ist, ist sicher auslegungssache, aber da kann man es zum Beispiel ganz hervorragend gebrauchen. Und in zich anderen Programmiersprachen auch.
Gut, Assembler ist per se sehr Hardware-Nah würde ich sagen, zumal da sowieso fast alles nur aus Bitmanipuliererei besteht  ;) Und in anderen Programmiersprachen macht es halt nur dann wirklich Sinn, wenn man eben etwas auf Bitebene machen will, z.b. um bestimmte I/O-Ports abzufragen o.ä.
Gespeichert
„Das ist nur Ihre Meinung“

K-Ninchen

  • > 10.000 Posts
  • ******
  • Beiträge: 11025
  • broken creature
Re: (Technische) Dinge, die einem das Leben schwer machen...
« Antwort #113 am: 29 Dezember 2008, 03:00:46 »

Ich sag mal lieber nix dazu, aber dieses rechts- und links- schieben hat schon so manches zeitraubendes MUL und DIV erfolgreich ablösen können ;D
Gespeichert
Im Falle eines Missverständnisses:
Ich bin zutiefst bösartig und hinterhältig (kein Wunder bei dem Sternzeichen) und habe grundsätzlich niedere Beweggründe für fast alles.

Thomas

  • > 10.000 Posts
  • ******
  • Beiträge: 15436
  • Industrie und Technik
Re: (Technische) Dinge, die einem das Leben schwer machen...
« Antwort #114 am: 29 Dezember 2008, 09:02:42 »

Ich sag mal lieber nix dazu, aber dieses rechts- und links- schieben hat schon so manches zeitraubendes MUL und DIV erfolgreich ablösen können ;D
Aber wer fängt denn deswegen in einer Hochsprache an, die bits hin- und her zu schieben ?

Vor allem : Zeitersparniss : Das schreibt die Frau, die Flash&Co. mit ihren ewig langen Lade- und Initialisierzeiten total geil findet  ;D
Gespeichert
„Das ist nur Ihre Meinung“

K-Ninchen

  • > 10.000 Posts
  • ******
  • Beiträge: 11025
  • broken creature
Re: (Technische) Dinge, die einem das Leben schwer machen...
« Antwort #115 am: 29 Dezember 2008, 13:52:42 »

Ich sag mal lieber nix dazu, aber dieses rechts- und links- schieben hat schon so manches zeitraubendes MUL und DIV erfolgreich ablösen können ;D
Aber wer fängt denn deswegen in einer Hochsprache an, die bits hin- und her zu schieben ?

Vor allem : Zeitersparniss : Das schreibt die Frau, die Flash&Co. mit ihren ewig langen Lade- und Initialisierzeiten total geil findet  ;D
Hochsprache heißt ja nicht, dass im Assembler etwas völlig anderes herauskommt als man da programmiert hat.
Gute Compiler setzen diese Shift-Befehle ziemlich direkt um ohne aufwändige Funktionsaufrufe, und im Idealfall direkt auf die entspr. Register ohne großartig den Stack zu bemühen.
Zu 286er-Zeiten hat eine Multiplikation von 32Bit-Werten einem gerne mal die ganze Anwendung lahmgelegt, gerade bei Grafikgedöhns, weil die Compiler das eben tatsächlich mit Funktionsaufrufen umgesetzt haben.

Und der Unterscheid von Flash zu Hochsprachen ist ganz einfach (und diese Werte sind ganz persönliche Erfahrungswerte):

Aufwändiges Computerspiel in Flash programmieren: Vielleicht 1 Monat, und läuft auf PC, Linux, Mac, etc.
Das selbe in C++ mit dem ganzen Gedöhns: Mehrere Monate. und läuft nur auf PC.

Und davon abgesehen, dass man mit zweiterem fast nix verdient (Es sei denn man programmiert im Alleingang Far Cry 4) , sitze ich lieber einen Monat daran statt ein halbes Jahr ;)

Aber ich sollte lieber wirklich nicht weiter dazu schreiben, sonst gibts wieder ne fiese Schelte und ganz negative Gefühle. Also bitte provoziere keine weiteren Antworten zu diesem sehr prekären Thema, Thomas ;)
Gespeichert
Im Falle eines Missverständnisses:
Ich bin zutiefst bösartig und hinterhältig (kein Wunder bei dem Sternzeichen) und habe grundsätzlich niedere Beweggründe für fast alles.

Thomas

  • > 10.000 Posts
  • ******
  • Beiträge: 15436
  • Industrie und Technik
Re: (Technische) Dinge, die einem das Leben schwer machen...
« Antwort #116 am: 29 Dezember 2008, 18:16:45 »

Ich sag mal lieber nix dazu, aber dieses rechts- und links- schieben hat schon so manches zeitraubendes MUL und DIV erfolgreich ablösen können ;D
Aber wer fängt denn deswegen in einer Hochsprache an, die bits hin- und her zu schieben ?

Vor allem : Zeitersparniss : Das schreibt die Frau, die Flash&Co. mit ihren ewig langen Lade- und Initialisierzeiten total geil findet  ;D
Hochsprache heißt ja nicht, dass im Assembler etwas völlig anderes herauskommt als man da programmiert hat.
Gute Compiler setzen diese Shift-Befehle ziemlich direkt um ohne aufwändige Funktionsaufrufe, und im Idealfall direkt auf die entspr. Register ohne großartig den Stack zu bemühen.
Ja, nur ist mir bei einer Hochsprache doch normalerweise relativ latte, was die CPU mit den Bits anstellt, ich habe meine Hochsprachenbefehle, und gut.Und wenn ich schon aus Zeitgründen auf Assembler-Teile zurückgreifen muß, dann doch auf direkte Multiplikations/Division-Befehle, und nicht auf die Bitschieberei.Ganz spezielle, extrem zeitkritische Sachen mal außen vor gelassen.

Und wenn ich mir angucke, wie heutzutage mit Ressourcen rumgeaast wird (z.b. Java-Applets&Co.), glaub ich kaum, das einer noch auf die paar Nanosekunden Rücksicht nimmt, die er mit den Shiftbefehlen sparen könnte.

Zitat von: K-Ninchen
Und der Unterscheid von Flash zu Hochsprachen ist ganz einfach (und diese Werte sind ganz persönliche Erfahrungswerte):

Aufwändiges Computerspiel in Flash programmieren: Vielleicht 1 Monat, und läuft auf PC, Linux, Mac, etc.
Das selbe in C++ mit dem ganzen Gedöhns: Mehrere Monate. und läuft nur auf PC.

Und davon abgesehen, dass man mit zweiterem fast nix verdient (Es sei denn man programmiert im Alleingang Far Cry 4) , sitze ich lieber einen Monat daran statt ein halbes Jahr ;)
OK, aber das ist mir als Anwender sowas von egal  ;) Mich nervt nur die Ressourcenfresserei von Flash&Co.

Zitat von: K-Ninchen
Also bitte provoziere keine weiteren Antworten zu diesem sehr prekären Thema, Thomas ;)
Doch  ;)
Gespeichert
„Das ist nur Ihre Meinung“

K-Ninchen

  • > 10.000 Posts
  • ******
  • Beiträge: 11025
  • broken creature
Re: (Technische) Dinge, die einem das Leben schwer machen...
« Antwort #117 am: 30 Dezember 2008, 01:58:42 »

Ich sag mal lieber nix dazu, aber dieses rechts- und links- schieben hat schon so manches zeitraubendes MUL und DIV erfolgreich ablösen können ;D
Aber wer fängt denn deswegen in einer Hochsprache an, die bits hin- und her zu schieben ?

Vor allem : Zeitersparniss : Das schreibt die Frau, die Flash&Co. mit ihren ewig langen Lade- und Initialisierzeiten total geil findet  ;D
Hochsprache heißt ja nicht, dass im Assembler etwas völlig anderes herauskommt als man da programmiert hat.
Gute Compiler setzen diese Shift-Befehle ziemlich direkt um ohne aufwändige Funktionsaufrufe, und im Idealfall direkt auf die entspr. Register ohne großartig den Stack zu bemühen.
Ja, nur ist mir bei einer Hochsprache doch normalerweise relativ latte, was die CPU mit den Bits anstellt, ich habe meine Hochsprachenbefehle, und gut.Und wenn ich schon aus Zeitgründen auf Assembler-Teile zurückgreifen muß, dann doch auf direkte Multiplikations/Division-Befehle, und nicht auf die Bitschieberei.Ganz spezielle, extrem zeitkritische Sachen mal außen vor gelassen.

Und wenn ich mir angucke, wie heutzutage mit Ressourcen rumgeaast wird (z.b. Java-Applets&Co.), glaub ich kaum, das einer noch auf die paar Nanosekunden Rücksicht nimmt, die er mit den Shiftbefehlen sparen könnte.

Zitat von: K-Ninchen
Und der Unterscheid von Flash zu Hochsprachen ist ganz einfach (und diese Werte sind ganz persönliche Erfahrungswerte):

Aufwändiges Computerspiel in Flash programmieren: Vielleicht 1 Monat, und läuft auf PC, Linux, Mac, etc.
Das selbe in C++ mit dem ganzen Gedöhns: Mehrere Monate. und läuft nur auf PC.

Und davon abgesehen, dass man mit zweiterem fast nix verdient (Es sei denn man programmiert im Alleingang Far Cry 4) , sitze ich lieber einen Monat daran statt ein halbes Jahr ;)
OK, aber das ist mir als Anwender sowas von egal  ;) Mich nervt nur die Ressourcenfresserei von Flash&Co.

Zitat von: K-Ninchen
Also bitte provoziere keine weiteren Antworten zu diesem sehr prekären Thema, Thomas ;)
Doch  ;)

Menno...

Naja, Bitschiebereien sind einfach nützlich. So :P

Stell dir vor, du hast einen Haufen Daten, aber er besteht nicht aus 8-Bit, sondern 6-Bit Einheiten, direkt hintereinander angeordnet. Da kommt man um Schiebereien nicht drum herum! Das ist generell bei allen Bitstreams so, die so eng gepackt sind, dass jedes einzelne Bit zählt. Das ist für Kompressionsalgorithmen ganz interessant. Oder wenn du ein 1-Bit Audiosignal abspielen willst (hat in etwa Megaphon-Qualität, in der Szene ja recht gängiges Klangmuster), wär es doch am einfachsten, das Bit, was an den Lautsprecher gesendet wird, einfach dran "vorbeizuschieben".
Schiebereien ohne Maskierungen machen oft nur wenig sinn. Also wenn, dann hat man es meist mit dem ganzen Paket Bit-Operatoren zu tun. Ich muss zugeben, ich liebe diese Dinger total :)
So ein Baukasten voller lustiger kleiner Operatoren, die lustige Dinge tun.
Gespeichert
Im Falle eines Missverständnisses:
Ich bin zutiefst bösartig und hinterhältig (kein Wunder bei dem Sternzeichen) und habe grundsätzlich niedere Beweggründe für fast alles.

Thomas

  • > 10.000 Posts
  • ******
  • Beiträge: 15436
  • Industrie und Technik
Re: (Technische) Dinge, die einem das Leben schwer machen...
« Antwort #118 am: 30 Dezember 2008, 09:35:57 »

Zitat von: K-Ninchen

Menno...

Naja, Bitschiebereien sind einfach nützlich. So :P

Stell dir vor, du hast einen Haufen Daten, aber er besteht nicht aus 8-Bit, sondern 6-Bit Einheiten, direkt hintereinander angeordnet. Da kommt man um Schiebereien nicht drum herum! Das ist generell bei allen Bitstreams so, die so eng gepackt sind, dass jedes einzelne Bit zählt. Das ist für Kompressionsalgorithmen ganz interessant. Oder wenn du ein 1-Bit Audiosignal abspielen willst (hat in etwa Megaphon-Qualität, in der Szene ja recht gängiges Klangmuster), wär es doch am einfachsten, das Bit, was an den Lautsprecher gesendet wird, einfach dran "vorbeizuschieben".
Schiebereien ohne Maskierungen machen oft nur wenig sinn. Also wenn, dann hat man es meist mit dem ganzen Paket Bit-Operatoren zu tun. Ich muss zugeben, ich liebe diese Dinger total :)
So ein Baukasten voller lustiger kleiner Operatoren, die lustige Dinge tun.
Na gut, da mag das Sinn machen.Auch sind logische Operatoren insgesamt sicher gelegentlich mal sinnvoll, aber wie du schon schriebst, speziell diese Schiebebefehle ohne weitere Maskierungen sind nur sehr selten sinnvoll anzuwenden.Und der Programmierer, der nur Anwendungen für Versicherungen schreibt oder ähnliches wird mit dem ganzen eher selten in Berührung kommen, vermute ich.

Ich bin ja kein Berufsprogrammierer, aber in meiner Ausbildung habe ich an selbstgebauten Kleinstcomputern ständig irgendwelche Portdaten in verschiedensten Formen verarbeitet, und da habe ich mir immer durch Byteweise maskierung ein Byte zur Auswertung ausgelesen, mit Daten unterhalb von 8 Bit habe ich mich also gar nicht erst beschäftigt  ;)

BTW: Was ist denn ein 1-Bit-Audiosignal ? Das ist doch dann nur ein Knacken im Lautsprecher oder wie ?
Gespeichert
„Das ist nur Ihre Meinung“

K-Ninchen

  • > 10.000 Posts
  • ******
  • Beiträge: 11025
  • broken creature
Re: (Technische) Dinge, die einem das Leben schwer machen...
« Antwort #119 am: 30 Dezember 2008, 18:49:57 »

Zitat von: K-Ninchen

Menno...

Naja, Bitschiebereien sind einfach nützlich. So :P

Stell dir vor, du hast einen Haufen Daten, aber er besteht nicht aus 8-Bit, sondern 6-Bit Einheiten, direkt hintereinander angeordnet. Da kommt man um Schiebereien nicht drum herum! Das ist generell bei allen Bitstreams so, die so eng gepackt sind, dass jedes einzelne Bit zählt. Das ist für Kompressionsalgorithmen ganz interessant. Oder wenn du ein 1-Bit Audiosignal abspielen willst (hat in etwa Megaphon-Qualität, in der Szene ja recht gängiges Klangmuster), wär es doch am einfachsten, das Bit, was an den Lautsprecher gesendet wird, einfach dran "vorbeizuschieben".
Schiebereien ohne Maskierungen machen oft nur wenig sinn. Also wenn, dann hat man es meist mit dem ganzen Paket Bit-Operatoren zu tun. Ich muss zugeben, ich liebe diese Dinger total :)
So ein Baukasten voller lustiger kleiner Operatoren, die lustige Dinge tun.
Na gut, da mag das Sinn machen.Auch sind logische Operatoren insgesamt sicher gelegentlich mal sinnvoll, aber wie du schon schriebst, speziell diese Schiebebefehle ohne weitere Maskierungen sind nur sehr selten sinnvoll anzuwenden.Und der Programmierer, der nur Anwendungen für Versicherungen schreibt oder ähnliches wird mit dem ganzen eher selten in Berührung kommen, vermute ich.

Ich bin ja kein Berufsprogrammierer, aber in meiner Ausbildung habe ich an selbstgebauten Kleinstcomputern ständig irgendwelche Portdaten in verschiedensten Formen verarbeitet, und da habe ich mir immer durch Byteweise maskierung ein Byte zur Auswertung ausgelesen, mit Daten unterhalb von 8 Bit habe ich mich also gar nicht erst beschäftigt  ;)
Hast du wohl! :P

BTW: Was ist denn ein 1-Bit-Audiosignal ? Das ist doch dann nur ein Knacken im Lautsprecher oder wie ?

Ja, genau. Und wenn man das ganz oft pro Sekunde macht, kommen fürchterliche Geräusche aus dem Lautsprecher (so wie früher beim türkischen Sender "TNT IRT")
Der Apple ][+ hat genau so die Soundausgabe geregelt, Port $C030. LDA $C030 -> Membran rein, noch mal LDA $C030 -> Membran wieder raus.
Interessant fand ich die Programme, die mit der Methode auch bis zu 3-Stimmiger Musik und Sprachausgabe hinbekommen haben. Da war dann aber auch definitiv eine gewisse Grenze erreicht.
Selbst der Gameboy hatte viel, VIEL bessere Sound-Möglichkeiten.
Gespeichert
Im Falle eines Missverständnisses:
Ich bin zutiefst bösartig und hinterhältig (kein Wunder bei dem Sternzeichen) und habe grundsätzlich niedere Beweggründe für fast alles.