??? 12/09/08 21:18 Read: times Msg Score: 0 +1 Good Answer/Helpful -1 Overrated |
#160803 - Human brain Responding to: ???'s previous message |
Just to keep us all grounded, I'd point out that this is 8052.COM and not a site devoted to large processors. I am well grounded, even if no soldering or measuring is in progress. People still constantly fail to produce decent assembler code. The 8052 has one of the easiest instruction sets available, and people still fail. And I don't think "most 8-bit processors" should be dismissed as "large processors". Is that what concerns us on 8052.com? You may be a single processor guy, by preference or requirement. But your argument is a weak way of avoiding my argument. I don't think anyone thought about one-clockers (for any processor size) when the first 8052 chips were released. And who knows what will happen in the next 10 years. The most important limiting factor here is probably that technologies that results in large variations in execution times depending on code and/or data locations or execution history makes it harder to exactly compute short delays - one of the reasons for using a microcontroller in the first place. [...] but ... Better??? One question that can never be fully answered, since "better" is a relative word and to make a relative comparison, a set of reference points must be documented and agreed upon. Peoples arguments may be perfectly valid, even if they are not "100% you". Enjoy the debate, instead of spending too much time defending assembler. There is no need of a defender. Assembler has existed since just after the invention of processors, and will continue to live on for many years to come. But in the end, it is just one tool. And the strengths of assembler may sometimes loose out to other strengths of other tools. It is up to each project - or the customer - to decide on "better" or "wanted" or "required" or "appreciated" or ... All this doesn't change the fact that, if you want to write code that's both small and fast, ASM is the only way to ensure that you do that. Wrong! Being smart, experienced and well-educated is the only way. The main factor is still the human brain. It doesn't matter how well you code in assembler if you choose the wrong algorithm. Or if you do a lousy implementation. This goes for any processor (and any high-level language too). So if your goal is to get people to write small and fast programs, your main argument should be: Be smart. Be well-educated. Get experience. Be inventive. I think people can be lousy assembly programmers but still great at developing embedded systems. But I think that they have to understand assembly and exactly what makes the used processor tick. Being great at designing and implementing in assembly is an extra bonus. |