C & Internet
-
Shade Of Mine schrieb:
tobidope schrieb:
Um ein Betriebssystem zu schreiben, wirst du nicht um Assembler herumkommen. Um einen [Netzwerkkarten-]Treiber zu schreiben ebenfalls nicht.
Beweis?
tipp: ich schreib die opcodes einfach direkt - dann habe ich diese high-level schicht 'Assembler' nicht mehr im weg und kann richtig programmieren.
mal im ernst: bist du lustig drauf?
Na gut, wer direkt opcodes schreiben will. Das wäre mir aber auf Dauer zu anstrengend ! Allerdings sind wir uns ja einig, dass man mit ANSI-C "keine Daten übers Internet schicken kann".
-
also für sockets brauch ich doch kein assembler???
-
tobidope schrieb:
japro schrieb:
Aber leider kann ANSI C das nicht ohne das Betriebsystem und einige Zeilen Assembler.
wie bitte?
Um ein Betriebssystem zu schreiben, wirst du nicht um Assembler herumkommen. Um einen [Netzwerkkarten-]Treiber zu schreiben ebenfalls nicht.
Dann sag aber bitte korrekt, dass das ANSI C nicht ohne das Betriebssystem oder einige Zeilen Assembler kann. Im übrigen ist das dann strenggenommen auch nicht mehr ANSI C...
-
TriPhoenix schrieb:
Dann sag aber bitte korrekt, dass das ANSI C nicht ohne das Betriebssystem oder einige Zeilen Assembler kann. Im übrigen ist das dann strenggenommen auch nicht mehr ANSI C...
Was genau möchtest du mir sagen? Was ist strenggenommen kein ANSI C und ...?
-
OPCodes direkt zu schicken würd ich mal sagen.
-
SirLant schrieb:
OPCodes direkt zu schicken würd ich mal sagen.
Was bitte soll "OPCodes direkt zu schicken" bedeuten?
-
ich schreib die opcodes einfach direkt
Du sprichst die Netzwerkkarte einfach direkt an und teilst ihr mit was sie tun
soll indem du ihr die OPCodes direkt schickst und nicht über das Betriebssystem.
-
SirLant schrieb:
ich schreib die opcodes einfach direkt
Du sprichst die Netzwerkkarte einfach direkt an und teilst ihr mit was sie tun
soll indem du ihr die OPCodes direkt schickst und nicht über das Betriebssystem.Ich sprach von opcodes der CPU und heutzutage kann man nicht mehr direkt mit der Hardware kommunizieren! Zumindest nicht unter Windows NT/2K/XP und Linux.
-
Euch ist fad, oder?
Warum sollte ich Assembler brauchen um mit Sockets zu arbeiten?
Was die Funktionen accept(), recv(),... intern machen, ist doch egal. Ob die mit Assembler oder Java implementiert sind, ist doch egal.Sicher: im Grunde arbeitet alles mit Opcodes - aber dann kann ich ja auf jede Frage mit: "ohne Opcodes geht da garnix" antworten.
Das geht doch total an der Frage vorbei...
-
Shade Of Mine schrieb:
Euch ist fad, oder?
Warum sollte ich Assembler brauchen um mit Sockets zu arbeiten?
Was die Funktionen accept(), recv(),... intern machen, ist doch egal. Ob die mit Assembler oder Java implementiert sind, ist doch egal.Sicher: im Grunde arbeitet alles mit Opcodes - aber dann kann ich ja auf jede Frage mit: "ohne Opcodes geht da garnix" antworten.
Das geht doch total an der Frage vorbei...
Er wollte wissen, obs mit ANSI C geht, und ich hab ihm gesagt: "Nein, aber ...", weil mir langweilig ist und ich finde, dass manche Fragen einfach so überflüssig sind, wenn der Fragende ein wenig Eigeninitiative besäße und Google anschmeißen würde.
-
tobidope schrieb:
Er wollte wissen, obs mit ANSI C geht, und ich hab ihm gesagt: "Nein, aber ...", weil mir langweilig ist und ich finde, dass manche Fragen einfach so überflüssig sind, wenn der Fragende ein wenig Eigeninitiative besäße und Google anschmeißen würde.
mhm, naja. wenigstens erfindest kreative ausreden warum du trollst...
-
Shade Of Mine schrieb:
tobidope schrieb:
Er wollte wissen, obs mit ANSI C geht, und ich hab ihm gesagt: "Nein, aber ...", weil mir langweilig ist und ich finde, dass manche Fragen einfach so überflüssig sind, wenn der Fragende ein wenig Eigeninitiative besäße und Google anschmeißen würde.
mhm, naja. wenigstens erfindest kreative ausreden warum du trollst...
Und was soll daran troll-haft sein?
-
weil die äusserung man bräuche assembler käse ist und nur solche unsinnigen diskussionen wie oben zur folge hat.
-
japro schrieb:
weil die äusserung man bräuche assembler käse ist und nur solche unsinnigen diskussionen wie oben zur folge hat.
tobidope schrieb:
Nein, kann man nicht. Windows und Linux sind in C geschrieben und können Daten "übers internet schicken". Dies wirst du gemerkt haben, als du gerade wahrscheinlich mit einem PC unter einem dieser Betriebssysteme diese Nachricht ans Forum geschickt hast. Aber leider kann ANSI C das nicht ohne das Betriebsystem und einige Zeilen Assembler. Also ab nach WinAPI oder Linux/Unix.
Das habe ich geantwortet, und das stimmt so. Wenn man nicht lesen kann und meine Ironie nicht verstehen will, dann ist das nicht meine Schuld!
Gruß Tobias
-
Aber leider kann ANSI C das nicht ohne das Betriebsystem und einige Zeilen Assembler
das ist so schlicht falsch. ich kann problemlos unter jedem vernünftigen OS sockets/internet benutzen ohne zu wissen wie man assembler überhaupt schreibt.
das ist so wie wenn du vorschlagen würdest selber ein auto zu bauen, um zum supermarkt zu fahren.
-
Aber leider kann ANSI C das nicht ohne das Betriebsystem und einige Zeilen Assembler. Also ab nach WinAPI oder Linux/Unix.
C + einige Zeilen Assembler == Betriebssystem if(strcmp(poster.os, "Windows") == 0) goto WinAPI; else goto Linux/Unix;
Hast du das jetzt verstanden, oder soll ich dir ein Bild malen?
Gruß Tobias
-
*HändeüberdenKopfschlag*
Zum Programmieren, dass man Daten übers Internet schicken kann, kann man C verwenden. (Der Fragende hat übrigens nicht nach ANSI-C gefragt, auch wenn er im ANSI-C-Forum ist.)
Richtig ist auch, dass man betriebssystemspezifische Funktionen dazu braucht (socket.h, wobei diese in Linux/Unix wie auch in Windows zur Verfügung steht).
Dass man dann auch noch Assembler dazu braucht ist falsch (selbsterprobt).
Dass hinter den meisten Funktionen Assembler steckt ist wieder richtig. Deswegen aber zu sagen, dass man Assembler dazu braucht ist doch etwas sehr kleinkrämerisch. Wenn dann müsste man schon richtig ins Detail gehen und sagen, dass man jeden einzelnen kleinen Stromstoß programmieren muss (mal ganz stark übertrieben).
-
AJ schrieb:
*HändeüberdenKopfschlag*
Zum Programmieren, dass man Daten übers Internet schicken kann, kann man C verwenden. (Der Fragende hat übrigens nicht nach ANSI-C gefragt, auch wenn er im ANSI-C-Forum ist.)
Kann man mit AnsiC daten übers internet schicken und wenn ja wie?
Sicher, dass er das nicht gefragt hat? Und sicher dass ich ihn nicht an andere Foren verwiesen hat? SIcher das du gelesen hast, worüber du zu schreiben meinst?
-
tobidope schrieb:
Aber leider kann ANSI C das nicht ohne das Betriebsystem und einige Zeilen Assembler. Also ab nach WinAPI oder Linux/Unix.
C + einige Zeilen Assembler == Betriebssystem if(strcmp(poster.os, "Windows") == 0) goto WinAPI; else goto Linux/Unix;
Hast du das jetzt verstanden, oder soll ich dir ein Bild malen?
Gruß Tobias
sorry aber: *g* LOL
1. zeig mir das executable format das auf allen os gestartet wird.
2. woher willst du wissen das der assembler für die entsprechende architektur korrekt ist?
3. zeig mir dem assembler code mit dem man unterscheiden kann welches os benutzt wird.
-
@EinNiemand:
Sorry, dass dies hier so ausartet.Stell deine Frage bitte nochmal im passenden Forum.
Also je nachdem welches Betriebssystem du benutzt im Linux, WinAPI oder Rund Um die Programmierung Forum.
Danke!
@tobidope:
bitte sieh doch ein, dass du im prinzip zwar recht hast, es aber absolut sinnlos ist. Denn jede(!) Funktion verlangt irgendwo einmal Maschinencode.Insofern hast du natürlich recht, allerdings kann man so auf jede Frage antworten - und das ist nun wirklich nicht sinn der sache.
Stell dir mal das vor:
Q: Ich will eine Zeichenkette in eine Andere kopieren
A: Da musst du dir mit Assembler helfen oder Syscalls machen - das hängt aber vom verwendeten OS/Platform abDie Antwort ist richtig, aber der Fragesteller kann nichts damit anfangen.
ein einfaches: strcpy() hätte ja auch genügt. Auch wenn strcpy() intern vermutlich mit Assembler implementiert ist...