Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
| From | Keith Thompson <kst-u@mib.org> |
|---|---|
| Newsgroups | comp.lang.c |
| Subject | Re: A portable stack in C |
| Date | 2011-11-15 13:19 -0800 |
| Organization | None to speak of |
| Message-ID | <lnwrb113tr.fsf@nuthaus.mib.org> (permalink) |
| References | <4ec14700$0$1387$4fafbaef@reader2.news.tin.it> <20111115081750.842@kylheku.com> |
Kaz Kylheku <kaz@kylheku.com> writes:
> On 2011-11-14, io_x <a@b.c.invalid> wrote:
[...]
>> i remember someone says that for calling function
>> it has to be a stack: i'm agree with him
>
> I do not. On many architectures, arguments are passed in registers. If there
> are many arguments, then some combination of stack and registers is used.
> In general, preparing the machine for a call to a routine requires assembly
> language programming.
As has been discussed at great length here, there has to be a "stack"
in the sense of some kind of last-in first-out data structure to
support recursive function calls. (In the absence of recursion, each
function could just maintain its own static data area.) But this
structure, though it's *typically* implemented as a contiguous region
of memory that grows in some particular direction, may be implemented
in other ways. See Thomas David Rivers's post in this thread.
The fact that people use the word "stack" on both senses has caused a
great deal of confusion.
--
Keith Thompson (The_Other_Keith) kst-u@mib.org <http://www.ghoti.net/~kst>
"We must do something. This is something. Therefore, we must do this."
-- Antony Jay and Jonathan Lynn, "Yes Minister"
Back to comp.lang.c | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
A portable stack in C "io_x" <a@b.c.invalid> - 2011-11-14 17:54 +0100
Re: A portable stack in C Barry Schwarz <schwarzb@dqel.com> - 2011-11-14 20:55 -0800
Re: A portable stack in C jacob navia <jacob@spamsink.net> - 2011-11-15 09:22 +0100
Re: A portable stack in C Ike Naar <ike@iceland.freeshell.org> - 2011-11-15 09:00 +0000
Re: A portable stack in C jacob navia <jacob@spamsink.net> - 2011-11-15 11:26 +0100
Re: A portable stack in C "BartC" <bc@freeuk.com> - 2011-11-15 10:05 +0000
Re: A portable stack in C jacob navia <jacob@spamsink.net> - 2011-11-15 11:25 +0100
Re: A portable stack in C "BartC" <bc@freeuk.com> - 2011-11-15 11:08 +0000
Re: A portable stack in C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2011-11-15 11:45 +0000
Re: A portable stack in C jacob navia <jacob@spamsink.net> - 2011-11-15 12:57 +0100
Re: A portable stack in C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2011-11-15 12:39 +0000
Re: A portable stack in C jacob navia <jacob@spamsink.net> - 2011-11-15 14:26 +0100
Re: A portable stack in C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2011-11-15 15:31 +0000
Re: A portable stack in C Keith Thompson <kst-u@mib.org> - 2011-11-15 12:53 -0800
Re: A portable stack in C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2011-11-15 21:15 +0000
Re: A portable stack in C Keith Thompson <kst-u@mib.org> - 2011-11-15 14:29 -0800
Re: A portable stack in C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2011-11-15 22:59 +0000
Re: A portable stack in C James Kuyper <jameskuyper@verizon.net> - 2011-11-15 17:30 -0500
Re: A portable stack in C Willem <willem@toad.stack.nl> - 2011-11-15 22:33 +0000
Re: A portable stack in C Keith Thompson <kst-u@mib.org> - 2011-11-15 15:07 -0800
Re: A portable stack in C Seebs <usenet-nospam@seebs.net> - 2011-11-15 22:37 +0000
Re: A portable stack in C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2011-11-15 23:01 +0000
Re: A portable stack in C "BartC" <bc@freeuk.com> - 2011-11-15 18:45 +0000
Re: A portable stack in C Keith Thompson <kst-u@mib.org> - 2011-11-15 12:41 -0800
Re: A portable stack in C Richard Damon <news.x.richarddamon@xoxy.net> - 2011-11-15 23:07 -0500
Re: A portable stack in C Keith Thompson <kst-u@mib.org> - 2011-11-15 20:18 -0800
Re: A portable stack in C Robert Wessel <robertwessel2@yahoo.com> - 2011-11-15 22:53 -0600
Re: A portable stack in C "BartC" <bc@freeuk.com> - 2011-11-16 12:00 +0000
Re: A portable stack in C falk@rahul.net (Edward A. Falk) - 2011-11-16 16:08 +0000
Re: A portable stack in C David Thompson <dave.thompson2@verizon.net> - 2012-01-19 02:41 -0500
Re: A portable stack in C Thomas David Rivers <rivers@dignus.com> - 2011-11-15 11:21 -0500
Re: A portable stack in C Barry Schwarz <schwarzb@dqel.com> - 2011-11-15 17:53 -0800
Re: A portable stack in C "io_x" <a@b.c.invalid> - 2011-11-15 19:21 +0100
Re: A portable stack in C Barry Schwarz <schwarzb@dqel.com> - 2011-11-15 17:53 -0800
Re: A portable stack in C "io_x" <a@b.c.invalid> - 2011-11-18 08:13 +0100
Re: A portable stack in C Rui Maciel <rui.maciel@gmail.com> - 2011-11-15 10:14 +0000
Re: A portable stack in C "io_x" <a@b.c.invalid> - 2011-11-15 19:20 +0100
Re: A portable stack in C Acid Washed China Blue Jeans <chine.bleu@yahoo.com> - 2011-11-15 08:13 -0800
Re: A portable stack in C Kaz Kylheku <kaz@kylheku.com> - 2011-11-15 16:27 +0000
Re: A portable stack in C "io_x" <a@b.c.invalid> - 2011-11-15 19:21 +0100
Re: A portable stack in C Keith Thompson <kst-u@mib.org> - 2011-11-15 13:19 -0800
Re: A portable stack in C blmblm@myrealbox.com <blmblm.myrealbox@gmail.com> - 2011-11-17 15:45 +0000
Re: A portable stack in C John Gordon <gordon@panix.com> - 2011-11-17 15:56 +0000
Re: A portable stack in C "io_x" <a@b.c.invalid> - 2011-11-17 18:02 +0100
Re: A portable stack in C "BartC" <bc@freeuk.com> - 2011-11-17 17:35 +0000
Re: A portable stack in C Vincenzo Mercuri <vincenzo.mercuri@yahoo.it> - 2011-11-17 18:45 +0100
Re: A portable stack in C Nick Keighley <nick_keighley_nospam@hotmail.com> - 2011-11-18 00:27 -0800
Re: A portable stack in C "io_x" <a@b.c.invalid> - 2011-11-18 10:40 +0100
Re: A portable stack in C "io_x" <a@b.c.invalid> - 2011-11-20 07:22 +0100
Re: A portable stack in C Nick Keighley <nick_keighley_nospam@hotmail.com> - 2011-11-21 00:38 -0800
Re: A portable stack in C "Jo" <none@none.none> - 2011-11-21 03:44 -0600
Re: A portable stack in C Phil Carmody <thefatphil_demunged@yahoo.co.uk> - 2011-11-21 13:00 +0200
Re: A portable stack in C "Jo" <none@none.none> - 2011-11-21 06:07 -0600
Re: A portable stack in C "Jo" <none@none.none> - 2011-11-21 03:50 -0600
Re: A portable stack in C "Jo" <none@none.none> - 2011-11-21 07:48 -0600
Re: A portable stack in C "io_x" <a@b.c.invalid> - 2011-11-21 20:11 +0100
Re: A portable stack in C "BartC" <bc@freeuk.com> - 2011-11-18 12:47 +0000
Re: A portable stack in C "Jo" <none@none.none> - 2011-11-18 23:31 -0600
Re: A portable stack in C blmblm@myrealbox.com <blmblm.myrealbox@gmail.com> - 2011-11-18 14:45 +0000
Re: A portable stack in C James Kuyper <jameskuyper@verizon.net> - 2011-11-18 10:14 -0500
Re: A portable stack in C Keith Thompson <kst-u@mib.org> - 2011-11-18 12:20 -0800
Re: A portable stack in C blmblm@myrealbox.com <blmblm.myrealbox@gmail.com> - 2011-11-19 17:23 +0000
Re: A portable stack in C Seebs <usenet-nospam@seebs.net> - 2011-11-19 18:49 +0000
Re: A portable stack in C "Jo" <none@none.none> - 2011-11-19 22:41 -0600
Re: A portable stack in C "io_x" <a@b.c.invalid> - 2011-11-20 07:27 +0100
Re: A portable stack in C "io_x" <a@b.c.invalid> - 2011-11-21 20:12 +0100
Re: A portable stack in C "io_x" <a@b.c.invalid> - 2011-11-20 07:50 +0100
Re: A portable stack in C "Jo" <none@none.none> - 2011-11-21 01:24 -0600
Re: A portable stack in C Nick Keighley <nick_keighley_nospam@hotmail.com> - 2011-11-21 05:22 -0800
Re: A portable stack in C "Jo" <none@none.none> - 2011-11-22 03:31 -0600
Re: A portable stack in C 88888 Dihedral <dihedral88888@googlemail.com> - 2011-11-21 06:38 -0800
csiph-web