Floating Point-How Important to Unix?

Ed G. edgee at cyberpass.net
Sat Apr 11 12:40:35 AEST 1998


> 	I think that you will find that the compiler and assember always
> generate relative addressing for subroutines and jumps. Any call to an
> earlier address will generate a negative number, hence lots of 017xxxx
> numbers in the text image.

I am not an expert on PDP-11 op codes, so you may well be right about 
this.  

In response to your criticism, I looked up jmp and branch 
instructions in the *Processor Handbook*.  Based only on my quick 
skim of the handbook, I don't think negative relative addresses would 
be a problem because: 

1. branch instructions are followed by a signed byte offset (-128, 
127).  This would not be a problem for my routine which only looks at 
the first four bits of every word and would ignore the offset in the 
odd byte.

2. jump instructions, which seem at first glance to be a problem 
because they are followed by a 16 bit word, are not because they 
always use absolute addressing, never relative and hence would never 
be followed by a negative number.

Ed

Received: (from major at localhost)
	by minnie.cs.adfa.oz.au (8.8.5/8.8.5) id BAA25622
	for pups-liszt; Tue, 14 Apr 1998 01:22:02 +1000 (EST)
X-Authentication-Warning: minnie.cs.adfa.oz.au: major set sender to owner-pups at minnie.cs.adfa.oz.au using -f


More information about the TUHS mailing list