??? 01/26/08 22:31 Read: times |
#149975 - Tools in Assem Responding to: ???'s previous message |
Back in the "DOS days" of PCs in the latter 80's and early 90's I did a lot of work on two products named XTreeGold and XTreeLink. These programs were written in Assembly language but we worked with a code development structure that leveraged the use of macros that handled all the normally tedious aspects of writing in Assembly language. Such things as looping constructs, conditionals, stack frames and parameter passing for subroutine calls and register saves and restores were handled to a degree where many of the "mistakes" often made were eliminated or even caught by assembly time error messages. Use of this structure enabled programs that maintained the incredible efficiency of assembler coded programs while at the same time saved the need to move up to something like C language.
There may well be an argument for setting up a macro set like this for an 8051 macro assembler <<presuming a reasonably powerful macro processor is present>>. For all I know, considering the age of 8051 architecture MCUs, this has already been done multiple times by clever embeddded developers. A similar scheme existed for an early assembler from a company called PARALLAX that was made for the PIC family. It had opcodes that were syntactically similar to 8051 assembler but then translated into the necessary set of lower level PIC instructions. Using such assembler increased programming productivity on that MCU by a high factor!! Michael Karas |
Topic | Author | Date |
Weekend question: What repeats frequently on '51? | 01/01/70 00:00 | |
Tools in Assem | 01/01/70 00:00 | |
Repeated tasks | 01/01/70 00:00 | |
mSec Clock Tick, off a timer interrupt | 01/01/70 00:00 | |
CodeArchitect | 01/01/70 00:00 | |
C runtime initializer tool | 01/01/70 00:00 | |
Generate Skeleton C code | 01/01/70 00:00 | |
biggest problem vs. nightmare | 01/01/70 00:00 | |
i think oranges and apples | 01/01/70 00:00 | |
it's the other way round | 01/01/70 00:00 | |
re SILabs | 01/01/70 00:00 | |
done | 01/01/70 00:00 | |
a general note on stuff like this | 01/01/70 00:00 | |
you missed the point | 01/01/70 00:00 | |
misunderstanding squared | 01/01/70 00:00 | |
of course it does ... | 01/01/70 00:00 | |
Too much like hard work | 01/01/70 00:00 | |
a most hnorable 'like' | 01/01/70 00:00 | |
OOPS a doublr | 01/01/70 00:00 | |
hard work | 01/01/70 00:00 | |
Assembly programmers not the worst | 01/01/70 00:00 | |
Another Example | 01/01/70 00:00 | |
neighbours | 01/01/70 00:00 | |
Code Architect | 01/01/70 00:00 | |
options are good![]() | 01/01/70 00:00 |