Datum: 05.07.2008 08:09
Hallo, ich weiß, dass es schon mehrere 'Welche Programmiersprache?'-Threads gibt, und ich habe auch da schon etwas recherchiert. Aber ich denke, dass meine Frage etwas raushaut. Kurze Vorrede: Ich bin Physiklehrer, der auf einem Mac mit Xcode freizeitprogrammiert. Mit Xcode kann ich auch problemlos C-Code für den ATmega8 programmieren und brennen. Xcode ist eine Mac-Programmierumgebung, die viele Programmiersprachen ermöglicht: C, Objective-C, C++, Java, Python, Ruby. Ich selbst kann ein bisschen C- und Objective-C. Meine Schüler (Oberstufe) leben in der Windoofs-Welt. Sie wollen einen Quadrokopter bauen, weshalb sie sich mit der Mikrocontrollerprogrammierung auseinandersetzen wollen. Ich selbst bin ihnen da etwa einen Monat voraus, also auch noch Anfänger. Ich schätze, dass meine Schüler Anfänger- bis Fortgeschrittenen-Erfahrungen in der Visual-Basic-Programmierung haben. Außerdem können sie (und ich) ein Roboter-Mikrocontroller-Interface in dessen Basic-Dialekt programmieren. Sie sind wettbewerbserfahren und haben eine gute 'Frustrationstoleranz'. Frage 1: In vielen Forumsbeiträgen wird für Assembler geworben, weil es näher an der Hardware (bzw. dem Maschinencode?) ist. Nach meinem Umschiffen von Assembler sowie den C-Programmiererfahrungen, die ich jetzt habe, kann ich diese Argumentation nicht so recht nachvollziehen, da ich zur C-Programmierung genauso die Register verwalten muss. Da ich möchte, dass meine Schüler ihr Abi packen und daher auch nur Freizeitprogrammierer bleiben, tendiere ich z.Z. dazu, meinen Schülern die C-Programmierung ans Herz zu legen, weil ich sie da parallel beraten könnte. Einzige Alternative sehe ich in BASCOM, weil sie hier halt schon Basic-Erfahrungen einbringen können. Wie seht ihre das? Frage 2: Für Steuerungsaufgaben wäre natürlich langfristig eine PC-Programmierung nett. Nach den Forumsbeiträgen zu urteilen würden die meisten C# bzw. C++ favorisieren, wo die Schüler ihre (dann schon vorhandenen) C-Kenntnisse einbringen könnten. Alternative wegen Basic-Erfahrung: Visual-Basic. Da ich annehme, dass die Schüler nach dem Abitur in Sachen 'Programmierung & Technik' weiter machen und studieren werden, wäre auch hier eine längerfristige Lösung wichtig, und nicht nur ein möglichst schnelles Ergebnis. Zum Zweiten: Wie seht ihr das? Vielen Dank für Eure, hoffentlich klärenden Beiträge. Berücksichtigt dabei bitte auch, dass ich sie beraten möchte. Also bitte keine schrägen Individual-Empfehlungen abseits der hier genannten Programmiersprachen, außer natürlich es macht wirklich absolut Sinn. dibujo
Datum: 05.07.2008 11:48
An der der FH wo ich studiere wird im ersten und zweiten jahr alles in c und oder c++ unterrichtet ..... also wäre es von dem standpunkt her nicht völlig falsch;) ASM halte ich für übertrieben! Die systeme sind mitlerweile alle so leistungsfähig das das meiner ansicht nach nicht nötig ist! Sollte man sehr sehr sehr zeit kritische Routienen brauchen so kann man diese in ASM noch in das c programm einbinden.... und für den pc ist asm eh schwachsinnig.... Ich denke es wäre sinnvoll mit einem kleinen Projekt anzufangen;) direkt an so ein riesen projekt dran ist denke ich aussichtslos
Datum: 05.07.2008 12:05
Ich würde auch für c plädieren. Bei mir an der Hochschule war das damals auch die Standardsprache für solche Zwecke. Wir haben nur c und c++ programmiert. Mit c kann man wirklich nichts falsch machen und die Kids lernen was Vernünftiges. Ich finde die Sprache c für die µC Programmierung auch nicht besonders schwer. Wenn es an die Windowsprogrammierung geht, gibts allerdings einfachere Sprachen als C++. Grüße Jonny
Datum: 05.07.2008 12:13
> Mit Xcode kann ich auch problemlos C-Code für den ATmega8 > programmieren und brennen. C ist auch die Standardsprache für Mikrocontoller. Andere Sprachen gibts normal nicht. Dass es für den AVR auch Bascom und ein Pascal Derivat gibt ist eher Hobbyprogrammierern zu verdanken. Für Typen die nur in der Industrie benutzt werden gibt i.a. vom Hersteller einen C-Compiler und das wars. > In vielen Forumsbeiträgen wird für Assembler geworben, weil es näher an > der Hardware (bzw. dem Maschinencode?) ist. Nach meinem Umschiffen von > Assembler sowie den C-Programmiererfahrungen, die ich jetzt habe, kann > ich diese Argumentation nicht so recht nachvollziehen, Mit Assembler kann man evtl. und auch nur vielleicht mal da und dort ein Byte sparen, aber wenn man kein kostensensitives Produkt in Millionenstückzahl produziert wird in der Industrie in C programmiert. -> Der Mehraufwand > die C-Programmierung ans Herz zu legen, weil ich sie da parallel > beraten könnte. Einzige Alternative sehe ich in BASCOM, weil sie hier > halt schon Basic-Erfahrungen einbringen können. Ich würde die Bedeutung der Programmiersprache nicht überschätzen. Es ist doch so dass es für jedes Konstrukt in Basic ein Entsprechendes in C oder Pascal (oder in jeder anderen prozedurorientieren Sprache, den ganzen "Algol68"-Ähnlichen) gibt, wahrscheinlich sogar 1:1. Nur die Syntax ist ein wenig anders. Aber da - denke ich - werden die Schüler sich recht schnell umstellen können. Das beste Beispiel dafür ist noch Borlad C++. Die hatten ihr Borland Delphi (ein Pascal mit OO-Erweiterungen) zuerst draussen, und als sie gesehen habe dass der Markt aber auch C++ will, haben sie ihre C++-IDE gestrikt indem sie ihrer IDE einen C++-zu-Delphi-Preprocessor drangeklatscht haben. Der hat nur die Sytax umgestellt, alle Konstrukte und Programmierideen haben 1:1 in beiden Sprachen funktioniert. (Deswegen hasse ich auch alle Basic vs. C vs. Pascal Diskussionen, die Sprachen sind genau gleich, nur mit leicht abgewandelter Syntax) Viel wichtiger und kritischer sehe ich die "Programmierumgebung", d.h. dass man den Compiler mitsamt der meist vorhandenen IDE (intgrated development environment, d.h. das ganze Fenster-Zeug und Klinki-Bunti drumrum) und das Programmierkabel im Griff hat. Dass man z.B. weiß wenn dieser oder jene seltsame Fehler auftaucht, woran das liegt ("aah, das Problem hatte ich schon mal, da muß noch dieses Verzeichis in den Pfad oder die Zeile in das Makefile oder ..."). Weil das kann ewig viel Zeit kosten. Eigentlich würde ich raten die selbe Programmierumgebung im Unterricht zu benutzen die du schon von deinem Privatrechner kennst, aber die Schule hat wahrscheinlich keine Macs. Gibts das "Xcode" auch für das OS das die Rechner an der Schule haben? Ansonsten musst du dich an das Forum hier halten wenns mit WinAVR oder dem AVR-Studio Probleme gibt. HTH Randy
Datum: 05.07.2008 12:41
Asssembler, denn mit allem anderen lernt man die Grundlagen nicht und kann deshalb nicht effizient proggen. Schön wäre es auch, wenn mal jemand nen vollständigen Befehlssatz (so wie die kurze AVR-Asm Referenz, die ist extrem super) vom 80x86 mit allen Erweiterungen (MMX, Pentium X, SSE etc.) veröffentlichen würde, denn sonst muss man sich den Kram alles im Internet zusammensuchen. Ausserdem ist ASM sehr praktisch um willentlich und unwillentliche Bugs zu entfernen :)
Datum: 05.07.2008 12:45
> Ausserdem ist ASM sehr praktisch um > willentlich und unwillentliche Bugs zu entfernen :) Programme entdongeln ? Gruß Fred :)
Datum: 05.07.2008 12:50
Das ist kompletter Unsinn. Man braucht keines Wegs Assembler zu lernen um effizient programmieren zu können. C ist maschinennah genug um damit sehr effizient zu programmieren. Will man sein Leben angenehm gestalten ist auch C++ sehr gut geeignet. Entgegen vieler Meinungen hier kann man auch wunderbar C++ als erste Programmiersprache lernen. C++ ist zwar viel komplexer als etwa C, BASIC oder Pascal, aber von der Komplexität sieht man am Anfang nicht viel. Man fängt ja nicht gleich mit templates und Polymorphie an.
Datum: 05.07.2008 13:15
Ich denke auch, dass die Programmierumgebung nicht vernachlässigt werden sollte. Gerade Anfängern vergeht häufig schon die Lust am Programmieren, bevor sie das System überhaupt zum Laufen gebracht haben. Mit C bzw. C++ kann man nichts falsch machen. Selbst wenn man später Visual Basic oder Delphi oder Java nutzen möchte, fällt dies mit C Kentnissen wesentlicher einfacher. Darum möchte ich an dieser Stelle Anfängern, die einen Einblick in die professionelle Programmentwicklung bekommen möchten, noch einmal auf die Seite http://www.haiq.info hinweisen. Dort wird als erstes in 3 Stufen die komplette Programmierumgebung mit den OpenSource Paketen von Trolltech (Qt4), dem OpenSource Compiler MinGW, sowie der OpenSource IDE (HaiQ) installiert. Danach geht es direkt in die Programmierung (10 Lektionen, learning by doing). Und zwar unabhängig von Microsoft (für alle gängigen Betriebssysteme geeignet). Ich würde einem Anfänger, aus eigener Erfahrung, auch nicht empfehlen, vorher dicke Lehrbücher zu studieren. Am Anfang ist das Problem, dass man das Wesentliche noch nicht vom Unwesentlichen unterscheiden kann und somit gezwungen ist, sich alle reinzuziehen, was am Anfang mehr verwirrend denn hilfreich ist. Nach dem Lehrgang sind die Leute jedenfalls so weit, dass sie einen umfassenden Einblick in die graphische C bzw. C++ Entwicklung erworben haben, um selbst entscheiden zu können, wie (und ob überhaupt) sie damit weitermachen wollen. Dann können sie auch den Ausführungen in Lehrbüchern folgen und haben schon mal eine 'bildliche' Vorstellung davon, was jene seltsamen Begriffe und Abkürzungen und ... und ... und ... überhaupt bedeuten. Und laßt Euch nicht von den 'Profis' verrückt machen. So schwer, wie die es oft machen, ist Programmieren gar nicht. Man muß nur den richtigen Einstieg finden, um nicht schon zu Beginn den Spaß daran zu verlieren. In diesem Sinne ... good coding ...
Datum: 05.07.2008 13:35
Habe mit Basic angefangen, danach mit asm, damit konnte man Sachen machen, die mit Basic nicht gingen! (25 Jahre her)! Hatte danach einen Abstecher zu Pascal, und bin wieder bei Basic (Visual-Basic, Bascom) und asm gelandet! Ich behaupte, mit dieser Kombination kann man (nicht unbedingt ich) alles, was aus dem C Lager kommt, bezüglich Entwicklungszeit und Programmausführungsgeschwindigkeit in den Schatten stellen! Es gibt aber auch Nachteile: Basic wird selten (gar nicht) an Hochschulen gelehrt, dadurch sind nur wenige gute Quelltexte im Internet verfügbar. siehe http://nehe.gamedev.net/ dort fehlen zu einigen Lektionen die Basic Quellen Da die meisten der proffessionellen Progs in C programmieren und Basic nicht verstehen wollen, halten sich hartnäckig die Vorurteile: Basic ist langsam, hat einen großen Footprint, keine Zeiger, keine Datenfelder, keine Vererbung ..... Diese Aufzählung lässt sich beliebig erweitern. Nochmal an alle C-Leute DEM IST NICHT SO. Basic hat noch ein Nachteil: Man wird als Anfänger nicht zum struktuierten Programmierung gezwungen. Dieser Nachteil kann sich aber später zu einem riesen Vorteil wandeln! Nämlich dann, wenn die C-Leute komplette Klassenstrukturen durch den Ram ziehen und sich wundern, dass ihr Programm nicht unter einem GByte Hauptspeicher läuft! (das war jetzt übertrieben aber beschreibt trotzdem das Grundproblem) so zum Schluß: Jede Hochsprache hat Vor- und Nachteile, darum haben alle ihre Berechtigung! Wer das Geklammer in C bzw. in Pascal mag, soll es tun. Anmerkung: Kann C und Pascal Quellen lesen möchte aber nicht in diesem Stil programieren müssen! Fred
Datum: 05.07.2008 13:52
Wenn ihr schon eine gewisse Basic-Affinität habt, dann schau dir mal RealBasic an! http://www.application-systems.de/realbasic/ Das gibts für Mac, Windows und Linux in identischen Versionen und man kann auf jeder Plattform auch für die jeweils anderen lauffähige Programme compilieren. Fertige Programme benötigen keine Installation und bestehen nur aus einer einzigen Datei, es ist keine extra Laufzeitumgebung oder RuntimeLib nötig. Das bietet so m.E. z.Zt. keine andere IDE. Damit kann man natürlich nicht für Mikrocontroller programmieren, aber für Desktop und Notebook. Und bevor alle die, die Basic nicht mögen (ist jedem selber überlassen), wieder "Buh" und "Bäh" rufen: RB ist ein modernes, objektorientiertes System mit Klassen, Methoden und Funktionen. Man kann eigene Klassen erstellen oder von vorhandenen ableite und erweitern. Es gibt praktisch Nichts, was nicht geht, z.B. Netzwerk-, Internet und Multimedia, Grafik (Pixel und Vektor), Datenbankzugriffe (MySQL, Oracle, Postgre, OpenSQL, SQLLite, ODBC ...), PDF erstellen/lesen, Systemzugriffe (die schränken dann antürlich die Plattformunabhängigkeit ein), Schnittstellen (seriell, parallel, USB), Drucken usw. Ich mache seit ca. 5 Jahren große kommerzielle Projekte mit Realbasic und habe es bisher nicht bereut. Frank
Datum: 05.07.2008 13:58
Ich hab das früher ähnlich gemacht. Lange Zeit Basic und dann Assembler dazu (erst über CALL ABSOLUTE, später dann über libs). War auch immer der Meinung, dass man C/C++ einfach nicht braucht. Irgendwann bin ich dann doch umgestiegen und bin heute der Meinung, dass Basic (inzw. Visual Basic) zwar ganz nett für kleine Sachen ist, sonst aber nix taugt. In einer Schule ist es wahrscheinlich wirklich gut aufgehoben, aber später bei richtigen Projekten wird man (eigentlich zurecht) ausgelacht, wenn man mit Basic ankommt.
Datum: 05.07.2008 14:07
Hallo, > In einer Schule ist es wahrscheinlich wirklich gut aufgehoben, aber > später bei richtigen Projekten wird man (eigentlich zurecht) ausgelacht, > wenn man mit Basic ankommt. Ich will nicht bestreiten, dass es so ist. Ist am Ende auch jedem seine Sache. Mich würde aber mal interssieren, warum das so ist. Ich vermute, dass die meisten heutigen Basic-Gegner auf ihrem Kenntnisstand von MS- bzw. QBASIC o.ä. stehengeblieben sind - dann hätten sie natürlich recht. Irgendwie scheinen nur wenige zur Kenntnis zu nehmen wollen, dass auch Basic-Dialekte weiterentwickelt werden. Und ob ich nun "if ... then ... end if" schreibe oder das Ganze in geschweifte Klammern, ist nun sowas von egal. Frank
Datum: 05.07.2008 14:10
Ob sich BASIC nun weiter entwickelt oder nicht, BASIC ist und bleibt ein Beginners All-purpose Symbolic Instruction Code - eine reine Anfänger-Programmiersprache.
Datum: 05.07.2008 14:16
> ZehPlusPlus
da schon wieder einer der keine Ahnung hat!
Fred
Datum: 05.07.2008 14:17
> Fred
da schon wieder einer der keine Ahnung hat!
ZehPlusPlus
Datum: 05.07.2008 14:20
@ZehPlusPlus ich wette das Du nicht mal weißt was ein UDT ist! Gruß Fred
Datum: 05.07.2008 14:22
Kommt auf den Zusammenhang drauf an.
Datum: 05.07.2008 14:25
@ZehPlusPlus siehste, aber jeder Basic Programmierer weiß dass ein UDT eine Struktur in C ist! Fred :]
Datum: 05.07.2008 14:25
Hat denn BASIC Versionskontrollsysteme (hmm... hässliche Übersetzung) ala CVS oder Subversion? Wie schaut es mit fertigen Make-Skripts aus? Wenn ich ein großes Projekt hab will ich nicht jedesmal alles neu übersetzen müssen. Ist es möglich mit mehreren Leuten gleichzeitig weiterzuarbeiten? Das allein zur Umgebung - die Sprache selbst erlaubt afair keine ordentliche Trennung bei großen Projekten. Selbst bei C++ hat man festgestellt, dass das noch etwas mangelhaft ist - und Namespaces eingeführt, zusätzlich zu all den Mechanismen die C und C++ ohnehin schon bieten. Header sind in C/C++ auch ein enormer Vorteil, Java hat Packages, und so hat jede größere Sprache ihre Mechanismen große Projekte zu kapseln. Hat Basic sowas? Denk mal an den Linux Kernel. Ich hab da eben mal sloccount drübergejagt (Programm das Codezeilen zählt und Sprachen zuordnet, dabei werden doppelte Sachen ausgefiltert und Leerzeilen, Kommentare etc. auch weggelassen). Das Ding enthält 5 Mio. Codezeilen, aber jedes Modul etc. für sich sieht nur einen klitzekleinen Teil davon. Mach sowas mal mit Basic. Multithreading ist mit Basic auch ein Problem (hat sich da mit .net was verbessert? Bei VS 6 würd ich sagen da gibt's kein Problem - es existiert einfach nicht).
Datum: 05.07.2008 14:29
@Fred: Ach komm, was soll das getrolle? Die Abk. UDT hat viele Bedeutungen (-> Google). Woher soll ich wissen, was du meinst?
Datum: 05.07.2008 14:41
> Hat denn BASIC Versionskontrollsysteme (hmm... hässliche Übersetzung) > ala CVS oder Subversion? RealBasic speichert seine Quellcodes als XML und kann deshalb mit CVS verwaltet werden. > Wenn ich ein großes Projekt hab will ich nicht jedesmal alles neu > übersetzen müssen. Das Übersetzten selbst großer Projekte (z.B. 2 MB Quellcode) dauert nur Sekunden, ist egal ... >Ist es möglich mit mehreren Leuten gleichzeitig > weiterzuarbeiten? Man kann Codesegmente als externe Module oder Klassen irgendwo im Netz ablegen. Dann können verschiedene Leute daran arbeiten. > Das allein zur Umgebung - die Sprache selbst erlaubt afair keine > ordentliche Trennung bei großen Projekten. s.O., nach der OO-Methode, z.B. main.ok=DB_Zugriff.open(User.loginData) wobei z.B. DB_Zugriff ein in sich geschlossenes Modul sein kann, main.ok eine boolesche Variable des Fensters main und user.logindata eine Eigenschaft des Objektes User ... > Multithreading ist mit Basic auch ein Problem (hat sich da mit .net was > verbessert? Bei VS 6 würd ich sagen da gibt's kein Problem - es > existiert einfach nicht). RB kann Threads, ohne NET auf allen 3 Plattformen. Frank
Datum: 05.07.2008 14:47
> > Hat denn BASIC Versionskontrollsysteme (hmm... hässliche Übersetzung) > > ala CVS oder Subversion? > > RealBasic speichert seine Quellcodes als XML und kann deshalb mit CVS > verwaltet werden. Heißt das, man kann den Quelltext nicht mit jedem beliebigen Texteditor bearbeiten?
Datum: 05.07.2008 14:53
Man kann wählen bzw. voreinstellen, zwischen - einem eigenen komprimierten Format (Standard) - XML - nur Text Beim Laden wird das Format automatisch erkannt. Frank
Datum: 05.07.2008 14:55
Also als "Anfänger" einen Quadrokopter bauen zu wollen halte ich für sehr mutig. Ich hab mich mal ein bisschen hereingelesen, was alles gebraucht wird an Bauteilen und vor allem Algorithmen, holla die Waldfee!
Datum: 05.07.2008 14:56
Das meiste davon hört sich eher nach Verlegenheitslösung an. Frank Esselbach wrote: > RealBasic speichert seine Quellcodes als XML und kann deshalb mit CVS > verwaltet werden. Kann Visual Basic das auch? Ist Quellcode zwischen den beiden austauschbar? Wie schon gefragt wurde - lässt sich Realbasic Code auch mit anderen Editoren öffnen? Selbst in visual studio c/c++ kann ich mir aussuchen welchen Compiler ich heute nehmen will - bin also unabhängig. Geht das auch bei Basic? >> Wenn ich ein großes Projekt hab will ich nicht jedesmal alles neu >> übersetzen müssen. > > Das Übersetzten selbst großer Projekte (z.B. 2 MB Quellcode) dauert nur > Sekunden, ist egal ... Nein, ist es nicht. Der Linux Kernel ist gepackt (!) schon ~40MB groß, entpackt ist meiner 500MB. Wie sieht es da aus? Der Kernel ist übrigens gemessen am Gesamtsystem eine eher kleine, aber sehr komplizierte Komponente. Gegen zB. KDE ist der Linux Kernel ein Winzling. Noch vergessen: Gibt es alternative Compiler? >>Ist es möglich mit mehreren Leuten gleichzeitig >> weiterzuarbeiten? > > Man kann Codesegmente als externe Module oder Klassen irgendwo im Netz > ablegen. Dann können verschiedene Leute daran arbeiten. Das meinte ich nicht. Gibt es Möglichkeiten für alle Entwickler einsehbar bestimmte Sachen zu sperren, damit solang niemand anders an der selben Sache weiterentwickelt? Für sowas braucht es eigentlich ein ausgewachsenes Versionskontrollsystem. >> Das allein zur Umgebung - die Sprache selbst erlaubt afair keine >> ordentliche Trennung bei großen Projekten. > > s.O., nach der OO-Methode, z.B. > > main.ok=DB_Zugriff.open(User.loginData) > > wobei z.B. DB_Zugriff ein in sich geschlossenes Modul sein kann, main.ok > eine boolesche Variable des Fensters main und user.logindata eine > Eigenschaft des Objektes User ... Das ist keine ordentliche Trennung. Im Namespace hast du nach wie vor alle Module etc. rumfliegen. Wie gesagt, sowas kann C, C++, Java, etc. auch - und weil es nicht reicht kennen die alle noch weitergehende Konzepte. Man könnte es zwar auch einzig und allein über Module machen, aber man könnte auch alles in Assembler entwickeln. >> Multithreading ist mit Basic auch ein Problem (hat sich da mit .net was >> verbessert? Bei VS 6 würd ich sagen da gibt's kein Problem - es >> existiert einfach nicht). > > RB kann Threads, ohne NET auf allen 3 Plattformen. Gibt es dafür gute Debugger? Wie sieht es mit Interthreadkommunikation aus? Wie gesagt - schaut alles nach Verlegenheitslösung aus. Klar funktioniert das für einen Hobbyprogrammierer, da funktioniert das mitunter sogar besser als eine ausgewachsene Lösung, weil man auch ohne lange Einarbeitungszeit damit klarkommt. Aber bei größeren Sachen stößt man schnell an Grenzen.
Datum: 05.07.2008 15:15
Also ich würde einfach C einführen. Das ist in dem Bereich einfach der Standard. Ein wenig ASM am Rande hat aber sicher noch niemandem geschadet. Das fördert häufig das Verständniss für die internen Abläufe. Als Entwicklungs-Umgebung auf jeden Fall AVR-Studio+WinAVR, damit können die auch zuhause problemlos arbeiten. Und dank GCC kann dann auch jeder die Plattform nutzen die er gerne hätte (Windoof, Mac, Linux, wasauchimmer) Wichtiger als die Programmiersprache finde ich aber das die Schüler lernen die Hardware und ihre Abläufe zu verstehen. Ausserdem sollten sie dabei auch lernen strukturiert zu arbeiten und sich vorher ein paar Gedanken zu machen bevor zu drauf loshacken. ;)
Datum: 06.07.2008 14:20
Also ich habe an der Schule und an der Hochschule am Anfang zunächst immer Assembler gelernt, keine großartigen optimierten Programme, aber z.B. eine etwas schwierigere Aufgabe "wie kann man eine Multiplikation zweier Binärzahlen lösen wenn es keine Multiplikationsbefehl gibt" Oder wie wird ein Unterprogramm geschrieben (Sprungbefehle). Ich finde das sehr wichtig, dass man Assembler-Grundzüge lernt, denn wenn man später mal Fehler im C-Code suchen muss, dann kann es passieren dass man wieder auf der Assemblerebene landet. Nach jeweils einem Semester bzw. Schuljahr wurde dann C eingeführt, da kamen dann auch mal komplexere Sachen, LCD ansteuern, RS232-Kommunikation, I2C-Bus, SPI-Schnittstelle.
Datum: 06.07.2008 21:53
(Wir haben in der Schule Common LISP und in der Uni Scheme gelernt)
Antwort schreiben
Die Angabe einer Email-Adresse ist freiwillig. Wenn Sie automatisch per Email über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.
Wichtige Regeln - erst lesen, dann posten!
- Suchfunktion und Betreffsuche benutzen - vielleicht gibt es schon einen ähnlichen Beitrag
- Aussagekräftigen Betreff wählen
- Im Betreff angeben um welchen Controllertyp es geht (AVR, PIC, ...)
- Groß- und Kleinschreibung verwenden
- Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang
- JPEG-Dateien (.jpg) nur für Fotos und Scans verwenden
- Schaltpläne, Screenshots usw. als PNG oder GIF anhängen
Formatierung (mehr Informationen...)
- [c]C-Code[/c]
- [avrasm]AVR-Assembler-Code[/avrasm]
- [pre]vorformatierter Text (z.B. Code in anderen Sprachen)[/pre]
- [math]Formel in LaTeX-Syntax[/math]
- [[Titel]] - Link zu Artikel