Re: Variable length addresses

Howard C Berkowitz <hcb@world.std.com> Mon, 06 September 1993 18:44 UTC

Received: from ietf.nri.reston.va.us by IETF.CNRI.Reston.VA.US id aa24951; 6 Sep 93 14:44 EDT
Received: from CNRI.RESTON.VA.US by IETF.CNRI.Reston.VA.US id aa24947; 6 Sep 93 14:44 EDT
Received: from munnari.OZ.AU by CNRI.Reston.VA.US id aa00663; 6 Sep 93 14:43 EDT
Received: by munnari.oz.au (5.83--+1.3.1+0.50) id AA15127; Mon, 6 Sep 1993 23:56:04 +1000 (from owner-Big-Internet)
Received: from world.std.com by munnari.oz.au with SMTP (5.83--+1.3.1+0.50) id AA15122; Mon, 6 Sep 1993 23:55:53 +1000 (from hcb@world.std.com)
Received: by world.std.com (5.65c/Spike-2.0) id AA25132; Mon, 6 Sep 1993 09:53:47 -0400
Sender: ietf-archive-request@IETF.CNRI.Reston.VA.US
From: Howard C Berkowitz <hcb@world.std.com>
Message-Id: <199309061353.AA25132@world.std.com>
Subject: Re: Variable length addresses
To: snmp@psi.com, jnc@ginger.lcs.mit.edu, Howard C Berkowitz <hcb@world.std.com>
Date: Mon, 6 Sep 1993 09:53:47 -0400 (EDT)
Cc: medin@nsipo.nasa.gov, tli@cisco.com, big-internet@munnari.oz.au, hbc@ginger.lcs.mit.edu
In-Reply-To: <9309050458.AA04561@ginger.lcs.mit.edu> from "Noel Chiappa" at Sep 5, 93 00:58:16 am
X-Mailer: ELM [version 2.4 PL21]
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Length: 1102

Back in the prehistoric days when we had to pick the faster instructions
when coding _application_ programs, I found it useful to avoid true
variable length records.  My alternative to full generality (i.e.,
a length-in-bytes field) was to use a bit string with a bit turned
on whenever an optional field WAS present.  

I then used the bit string, either directly or more commonly through
an indirect table, to jump to routines that processed that set of
elements (or called a sequence of routines for each field).

I wonder if the variable-vs.-fixed <thingie>* discussion might use
some of these ideas.  While an overall <thingie> is indeed of variable
length, I suggest that it usually will contain a sequence of
fixed-length elements.  The presence or absence of these elements
is carried in a bit string rather than a total length counter.

I could see a pipelined processor architecture where processing is
started on elements as soon as their flag is recognized.  Hmmm...
on
thinking about this further, it's more of a pipelined decoder
coupled with parallel element subprocessors.

---
Howard