Originally Posted by DandyA
View Post
Announcement
Collapse
No announcement yet.
who is the biggest computer geek?
Collapse
X
-
sigpic A Truly Beakerific Long Pot Sir!
-
Originally Posted by RGCirencester View PostI think while i wasnt on here i have lost the war on this one.... I have no idea what that means I'm assuming the last bit is leet, if so i know that one, but i dont play that many games :'( I wanted to win something
Comment
-
as for computer games, the last one i played was jet set willy !
Comment
-
Originally Posted by RGCirencester View PostWell you can program in either these days, with the 8051 microprocessors for instance you can program in both. For our DSP module, my lecturer actually rewrote the ADC sampling code in assembly because he didnt get on with the supplied c functions by microchip. Hes been battling that for a while now, if he ever gets it ro work we will be attaching probes to the top of our head and turning a lightbulb on and off by opening / closing our eyes
Originally Posted by totlxtc View Postlol
1 4/\/\ L337
Comment
-
Originally Posted by LavaChild View PostYou can program in pretty much whatever language so long as you've got the necessary compilers... At the end of the day whatever you type gets converted to binary opcodes & operands anyway. C is certainly the more common, but alot of old school coders prefer Assembler as it allows much more efficient code (Certainly when compared to off the shelf C compilers, to example).
I am elite?sigpic A Truly Beakerific Long Pot Sir!
Comment
-
I'm not going to get drawn into another great debate. I feel that whenever I make a comment on here your the first person to try and prove me wrong. I'll answer the points you've raised but there is no point getting too deep in this; It's pretty clear-cut.
Originally Posted by RGCirencester View PostActually if you consider the complexities of writing in assembler very often the more efficient program will be the c program.
Try an IF statement or for loop. In C this is trivial, but requires more commands in assembler... This doesn't mean the C code suddenly demands less work from a processor, but simply when compiled it will produce more machine code... And how it does this is little up to us.
If we use an expensive/well written compiler it will usually make code more efficient than a free or trial product. I believe even MPLab have some compiler restrictions on efficiency and optimisation.
Originally Posted by RGCirencester View PostIt is also far easier to transfer code between programmers.
Originally Posted by RGCirencester View Postwhich "off the shelf" c compilers are you talking about for embedded systems?
Originally Posted by RGCirencester View PostMost chips have there own compiler such as microchips MPLab, complete with optimized functions for rach microprocessor.
Lots of useful resources will confirm and go into more details:
Wiki
At the lowest level, writing code using an assembly language designed for a particular hardware platform will normally produce the most efficient code since the programmer can take advantage of the full repertoire of machine instructions.
Those same old-time programmers who claim that truly efficient software is written in assembly language also offer another common piece of advice -- if you want to learn how to write great high-level language code, learn how to program in assembly language.
This is very good advice. After all, high-level compilers translate their high-level source statements into low-level machine code. So if you know assembly language for your particular machine, you'll be able to correlate high-level language constructs with the machine language sequences that a compiler generates. And with this understanding, you'll be able to choose better high-level language statements based on your understanding of how compilers translate those statements into machine code.
Comment
-
I was not tryign to argue that c is a faster language than assembler but if you ask a lot of experienced programmers from the industry (lectures etc.) they have told me that freiquently the resultant programs written in assembler will be slower than there counterparts using the ready made c functions from each manufacturer. Asembly language is immenssely difficult to debug and requires a high level of skill in order to program efficiently, and as each processor will have a seperate instruction set you must learn the architecture for each chip every time you switch to a different model.
. Maybe I should included the caveat that it requires the coder to be comfortable in assembler (Well written assembler is more efficient than c, poorly written assembler is less efficient than c).
But you also have to consider development time into this, frequently these days you are looking for a very fast turnaround, because technology will go out of date. This means that c can be faster given the work already gone into optimizing the tools by the manufacturer.
As for MPLab, the free version does not come with the optimizations that i was talking about above, and so yes you probably would get a better program in assembler given the skill and time required to write it. However the professional version we have at uni optimizes the code making it actually quite fast.
Seriously im not trying to argue for arguments sake. But C is quite a low level language and compares very well with assembler compared to other languages.Last edited by RGCirencester; 12 March 2009, 09:45 PM.sigpic A Truly Beakerific Long Pot Sir!
Comment
-
Not quite... We veered off into low level embedded systems instead of high level programming languages. And for the record i own no comics have never attended a star trek convention and have no idea what your leet speak means i had to google it to find out what it wassigpic A Truly Beakerific Long Pot Sir!
Comment
-
Thought I had better interrupt to try and bring it all back down to earth again
But how Geeky is this then - http://www.thesnookerforum.com/board...ad.php?t=16711
Comment
-
Originally Posted by LavaChild View PostDan speaks a very confusing language?
Comment
Comment