From: walsh@stdc01.UUCP (Mike Walsh)
Subject: Re: Memory Access Question
Date: 2 Aug 89 13:23:29 GMT [thread overview]
Message-ID: <513@stdc01.UUCP> (raw)
In-Reply-To: 24171@gumby.mips.COM
>>Others have commented that you should write in assembler to
>>do low-level memory accesses, but keep in mind that you don't
>>really need to leave Ada to use assembly language: just use
>>machine-code insertions! It's for this kind of application
>>that Ada provides machine_code. Now if your compiler does not
>>support machine code then you're out of luck, but a number of
>>good Ada compilers do.
>>--
>>-- Mike Murphy
>>-- UUCP: sun!decwrl!mips!murphy
>>-- AT&T: (408) 991-0438
In my experience, writing machine code insertions is not as trivial as
this posting makes it out to be. The project I worked on was and ARMY
contract and they wanted everything done in Ada. We were using the
Softech Ada86 Compiler and an Intel 80186. Softech provided the Machine
Code Package, but it was incomplete or erroneous. Plus anyone writing
machine code insertions had better be better than just average assembly
language programmer. IMHO it is better to write the routine in Assembly,
and pass an Address to the routine from the Ada caller, or just invoke
an Assembly Language routine from Ada, since if the code needs to be
protable, it is likely that the architecture of the machine that the
porting is being done on is different from the original machine. Since
the architecture is most likely different, the memory scheme is probably
different. I also feel that a good Assembly Language Routine that is
well documented is much more maintainable than a peice of code written
in machine code insertions. BTW, machine code insertions are machine
dependent anyway.
...Mike
Mike Walsh, Electrical Engineer
Star Technologies
Graphicon Products Division
P.O. Box 13951
Reserach Triangle Park, NC 27709
(919) 361-3800
walsh@stdc01.UUCP {...!uunet!mcnc!rti!stdc01!walsh}
next prev parent reply other threads:[~1989-08-02 13:23 UTC|newest]
Thread overview: 70+ messages / expand[flat|nested] mbox.gz Atom feed top
1989-07-26 20:34 Memory Access Question tony
1989-07-27 13:06 ` richard a hammond
1989-07-27 18:53 ` Ray Trent
1989-07-28 0:48 ` Mike Murphy
1989-08-02 13:23 ` Mike Walsh [this message]
1989-08-02 20:20 ` Mike Murphy
1989-07-29 0:00 ` Brian Sullivan
-- strict thread matches above, loose matches on Subject: below --
1988-11-28 22:19 Collective response to := messages Geoff Mendal
1988-11-29 14:39 ` Dennis Doubleday
1988-11-29 21:08 ` Ray Trent
1988-11-30 14:37 ` Stephe Leake
1988-12-01 14:54 ` David S. Rosenblum
1988-12-02 20:21 ` William Thomas Wolfe,2847,
1988-12-04 21:15 ` David S. Rosenblum
1988-12-04 23:27 ` William Thomas Wolfe,2847,
1988-12-05 14:46 ` David S. Rosenblum
1988-12-05 21:23 ` William Thomas Wolfe,2847,
1988-12-07 17:33 ` Stephe Leake
1988-12-07 16:03 ` Definition of pass by reference Robert Eachus
1988-12-07 17:15 ` Collective response to := messages Stephe Leake
1988-12-07 16:07 ` Stephe Leake
1988-12-09 3:15 ` David S. Rosenblum
1988-12-01 21:31 ` Ray Trent
1988-12-07 16:21 ` Stephe Leake
1988-11-30 16:29 ` David S. Rosenblum
1988-11-30 18:29 ` William Thomas Wolfe,2847,
1988-11-30 22:28 ` David S. Rosenblum
1988-12-01 3:09 ` William Thomas Wolfe,2847,
1988-12-01 15:16 ` David S. Rosenblum
1988-12-02 19:31 ` William Thomas Wolfe,2847,
1988-12-04 21:03 ` David S. Rosenblum
1988-12-05 2:34 ` William Thomas Wolfe,2847,
1988-12-05 14:07 ` David S. Rosenblum
1988-12-07 17:26 ` Stephe Leake
1988-12-06 19:16 ` Collective response to := messa stt
1988-12-09 3:39 ` David S. Rosenblum
1988-11-30 19:13 ` CORRECTION Re: Collective response to := messages David S. Rosenblum
1988-12-01 18:31 ` Ray Trent
1988-12-02 14:49 ` David S. Rosenblum
1988-12-05 17:33 ` Collective response to := messa stt
1988-11-30 18:24 ` Collective response to := messages Robert Eachus
1988-12-02 14:58 ` David S. Rosenblum
1988-12-02 19:34 ` Mark C. Adolph
1988-12-05 17:15 ` Collective response to := messa stt
1988-11-29 21:44 ` Collective response to := messages William Thomas Wolfe,2847,
1988-11-14 13:20 Ada language revision Stanley Roger Allen, AdaDude
1988-11-15 23:28 ` Wilmer Rivers
1988-11-16 19:06 ` William Thomas Wolfe,2847,
1988-11-17 15:34 ` Stephe Leake
1988-11-18 16:39 ` Steve Tynor
1988-11-18 19:22 ` Ron Guilmette
1988-11-23 22:22 ` William Thomas Wolfe,2847,
1988-11-29 15:35 ` Stephe Leake
1988-11-18 0:32 ` Ron Guilmette
1988-11-22 14:37 ` Stephe Leake
1988-11-23 13:37 ` Dennis Doubleday
1988-11-23 19:41 ` Steve Tynor
1988-11-23 21:14 ` Richard Pattis
1988-11-25 20:36 ` Robert Firth
1988-11-29 15:12 ` limited private types Stephe Leake
1988-12-01 23:06 ` Ron Guilmette
1988-12-05 1:48 ` Paul Stachour
1988-12-05 12:31 ` Reference Semantics William Thomas Wolfe,2847,
1988-12-06 0:29 ` Paul Stachour
1988-12-07 1:07 ` Reference Semantics, assignment overloading, etc Ray Trent
1988-12-08 17:36 ` Reference Semantics, assignment ryer
1988-12-06 16:56 ` limited private types ryer
1988-12-06 20:09 ` stt
1988-12-07 15:51 ` Stephe Leake
1988-11-21 15:40 ` Ada language revision stt
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox