Perché mettere qualcosa in pila chiamato "push"?

22

In base al link

push

verb (used with object)

  1. to press upon or against (a thing) with force in order to move it away.

  2. to move (something) in a specified way by exerting force; shove; drive: to push something aside; to push the door open.

  3. to effect or accomplish by thrusting obstacles aside: to push one's way through the crowd.

  4. to cause to extend or project; thrust.

  5. to press or urge to some action or course: His mother pushed him to get a job.

Questo IMO si adatta alle code FIFO . C'è una spiegazione per questo?

    
posta doc 14.05.2012 - 12:08
fonte

4 risposte

47

Secondo la leggenda, lo stack originale ha ricevuto il suo nome per analogia con le pile di piatti della mensa universitaria: ne metti una sopra e la pila di piatti (caricata a molla) diminuisce un po ', ne prendi una via e si apre un po '. Quindi 'spingendo' ha ricevuto una connotazione di operare verso il basso, anche se in realtà non spingi giù sul piatto - lo appoggi appena e la gravità fa il lavoro. "Stack di pushdown" è ancora una frase comune, e gli stack tendono a crescere verso il basso in memoria (cioè con la diminuzione degli indirizzi di memoria), sebbene sia dubbio che ciò abbia a che fare con stack di piatti o no.

    
risposta data 14.05.2012 - 12:17
fonte
44

Pensa a un Pez dispenser . Questo è il tuo modello mentale per uno stack - per ultimo, prima. Quindi aggiungere un elemento a una pila richiede di spingere verso il basso gli elementi esistenti per fare spazio.

    
risposta data 14.05.2012 - 12:15
fonte
3

FIFO è una coda: il primo aggiunto al gruppo è il primo servito.

LIFO è una pila - come un mucchio di vassoi. Prendi sempre quello in cima allo stack.

Il termine push viene utilizzato quando si aggiunge un oggetto al LIFO / Stack, perché in alcune caffetterie la pila di vassoi si trova su una superficie caricata a molla. Man mano che più oggetti vengono messi in pila, l'intera pila si abbassa.

Quando l'elemento superiore / più recente viene rimosso dallo stack, quello superiore viene "scoppiato" in cima allo stack.

    
risposta data 14.05.2012 - 12:23
fonte
3

Le illustrazioni servite da piatti o vassoi, dispenser e pile di libri sono arrivati più tardi. Da Wikipedia: (con riferimenti)

"La pila fu proposta per la prima volta nel 1946, nel design del computer di Alan M. Turing (che usava i termini" bury "e" unbury ") come mezzo per chiamare e tornare dalle subroutine." Altri lavori e brevetti da parte di altri seguirono nel 1957. Le attuali illustrazioni di pile che usiamo oggi potrebbero aver causato l'evolversi in push e pop dei termini originali di Bury e di unbury. Forse questi termini suonano meglio.

Trovare esattamente dove o quando è successo è la risposta alla domanda dell'OP. Forse la risposta è sepolta in uno dei riferimenti di Wikipedia come " Verfahren zur automatischen Verarbeitung von kodierten Daten und Rechenmaschine zur Ausübung des Verfahrens . "

    
risposta data 16.05.2012 - 17:42
fonte

Leggi altre domande sui tag