tada@athena.mit.edu (Michael Zehr) (04/05/88)
I have a C prgram which has one very small part which needs to be *real* fast. The obvious solution seems to be to code it in assembler, but the problem is that i don't think reading through the friendly orange manual is the best way to learn assembler for a VAX. Does anyone have suggestions for a good tutorial? (I've done some assembler for micro's, and have studied varieties of assembly languages in school, so i'm familiar with most of the concepts, but i haven't done any programming in assembly on a real machine.) Thanks in advance for any help. ------- michael j zehr "My opinions are my own ... as is my spelling."
jayz@cullsj.UUCP (Jay Zorzy) (04/05/88)
From article <4331@bloom-beacon.MIT.EDU>, by tada@athena.mit.edu (Michael Zehr): > > I have a C prgram which has one very small part which needs to be *real* > fast. The obvious solution seems to be to code it in assembler, but the > problem is that i don't think reading through the friendly orange manual > is the best way to learn assembler for a VAX. Does anyone have suggestions > for a good tutorial? I would recommend "Computer Programming and Architecture: The VAX-11" by Henry M. Levy and Richard H. Eckhouse, Jr. (Digital Press). You can probably find it at your nearest DEC Bookstore for around twenty bucks. Jay Zorzy Cullinet Software San Jose, CA
jeh@crash.cts.com (Jamie Hanrahan) (04/07/88)
In article <280@cullsj.UUCP> jayz@cullsj.UUCP (Jay Zorzy) writes: >From article <4331@bloom-beacon.MIT.EDU>, by tada@athena.mit.edu (Michael Zehr): >> >> I have a C prgram which has one very small part which needs to be *real* >> fast. The obvious solution seems to be to code it in assembler, but the >> problem is that i don't think reading through the friendly orange manual >> is the best way to learn assembler for a VAX. Does anyone have suggestions >> for a good tutorial? > >I would recommend "Computer Programming and Architecture: The VAX-11" by >Henry M. Levy and Richard H. Eckhouse, Jr. (Digital Press). You can >probably find it at your nearest DEC Bookstore for around twenty bucks. > >Jay Zorzy >Cullinet Software >San Jose, CA There's also a VAX Macro (or Macro-32, if you prefer) textbook by Sara Baase of San Diego State Univ. Both of these are quite old, but are perfectly applicable to current (and future) VMS systems. Both of these books are quite good. Neither is really intended to be a self-teaching tutorial, but if you're comfortable with other assembler languages and with C you shouldn't have much trouble picking up what you need to know. You should also be prepared to peruse your VAX C documentation, and possibly the other VAX documentation on the VAX Procedure Calling Standard, to get a grip on C's argument-passing conventions. On the other hand... unless you can come up with a spiffy way to implement your routine in Macro, something that takes good advantage of the VAX instruction set and which isn't seen by the C compiler, I doubt you'll see huge improvements. The infamous Sieve of Er., coded in Macro, runs in about 2/3 the time as the C version... better, but not tremendously so.