610 Shares 6983 views

« Quel est ce » il est sur la pile, « qu'il » est revenu: résumé fondation de la réalité

Peut-être dans une entreprise informatique future oublier uns et de zéros, et les processeurs ne fonctionneront pas sur des octets et des mots, mais jusqu'à présent, tout est représenté dans le monde binaire et vivre selon ses règles. Qu'est-ce que la pile et où il applique – est susceptible d'être tout à fait clair. Dès le début de son apparition a été le premier registres du processeur, et la logique de son travail était dans le besoin de mémoire. En conséquence des idées simples pile « qu'il » est devenu de facto « si nécessaire. »

processeur fonctionnelle, la logique binaire

Le processeur commande la mémoire et met en oeuvre une logique d'exécution de code cyclique. Le programme – une ou un ensemble de fonctions qui représentent une séquence d'opérations: de choisir quelque chose à faire est de mettre quelque chose. Système d'exploitation – le même code, plus responsable: il est chargé d'exécuter et de contrôler d'autres programmes.

En fait fonctionner (algorithme élément indépendant) – juste une séquence d'opérations binaires. Le programme est différente de la fonction qui se réalise et coordonne les autres parties du code.

Accepted algorithme de conception en tant que séquence d'éléments séparés et distincts. Chacun porte sa propre fonction (généralement un seul) – il est pratique pour le débogage, visuel, pratique. Cette programmation permet de simplifier le processus de développement, de créer une bibliothèque d'algorithmes et de les utiliser dans d'autres projets.

Envoi et gestion des retours

Le programme appelle la fonction, il passe les données, calcule le résultat. Depuis l'exécution d'une autre partie de code est initiée de l'extérieur, car le contrôle de retour doit être effectué sur le prochain appel d'opération. Ce mécanisme est fourni par l'ordre d'exécution de code et la réalisation des résultats du programme dans son ensemble.

Code est chargé en mémoire et exécuté de manière séquentielle. Pour appeler une fonction (un autre morceau de code), la pile est utilisée. Qu'est-ce? Mémoire (et un pointeur vers elle), qui diffère de l'ordinaire en ce que chaque élément successif est placé sur le précédent. Car pour trouver quelqu'un qui est ci-dessous, vous devez prendre pour travailler et tous ceux qui sont là-dessus. Pointeur pointe toujours à la position actuelle dans la pile.

Dans un premier temps, la pile reçoit l'adresse de retour – l'adresse suivante l'opération d'appel. Puis mettre toutes les données nécessaires à la fonction appelée. La fonction appelée sélectionne les données, les traite et génère le rendement des résultats de contrôle pour le dernier élément de la pile. Équipe: « empiler » déplace le pointeur vers la précédente donnée, et choisi le « il » va au traitement.

Registres AX, BX, CX, DX, EX est devenu un symbole du début de l'ère de l'ère de l'information, mais le SP et la SS – est sa mascotte principale. Comment utiliser une pile de programmation? Les exemples du passé ne seront pas des monuments de l'architecture de l'époque au début. Stack est venu dans le monde binaire, en même temps que les mots « fonction » et « récursion » et disparut dans la logique générale de la pratique de programmation.

Servir les données pour décider quoi faire

mécanisme d'empilage permet à plusieurs appels à différentes parties du code, y compris la récursion: une fonction elle-même appel. Il y a des limites naturelles: la taille de la mémoire pour la pile et un code devrait être suffisant. Si le programme est correct, sa performance sera stable, la gestion de transfert / retour – exact.

La pile est pleine, que les plaques se trouvent dans une pile, qui est envoyé à mettre la table. Le sort des plaques, qui est, leur contenu, est résolu dans un endroit où il est transmis. Selon la logique de l'interaction, l'équipe « pile, il » donne une pré-arrangé entre ce ceux qui ont appelé, et ceux qu'il appelait. À la fin du processus, il est important de rendre le contrôle à l'adresse qui suit celle qui a envoyé la pile sur la table.

logique très simple et efficace. Ce qui est sur la table, que la décision est prise – il fonctionne comme il va de pair avec les résultats – sa préoccupation face à quelle table il envoie une pile de données – ses soins, la chose principale est de revenir toujours le contrôle au prochain défi pour l'opération. La fonction peut appeler lui-même que si elle admet récursion, mais récursion est possible uniquement si les données tombent dans la pile.

L'abstraction fondamentale

Lorsque l'ordinaire et devient la base d'un point de vue pratique, virtuellement, nous pouvons raisonnablement être objectif, et longue durée de vie de ce dernier. Une pile de plaques a donné naissance à la pile et la pile a fourni des processeurs de travail, systèmes d'exploitation, des programmes, des fonctions et des secteurs de haute technologie dans son ensemble.

Cas classique est la base d'un simple, mais rares cas où il peut être estimé sans contestation vide sur la syntaxe, la sémantique, les arrangements et les priorités de programmation dans la lutte pour la survie de la langue.

En partie était la cellule de mémoire, et il reste à ce jour, mais c'est l'idée de celui-ci a changé. en passant par l'épaisse confiance de typage fort, ils prétendent maintenant que quelque chose peut être quelque chose et maintenir la mémoire réelle de quoi que ce soit, car il est déjà très important.

Les opérateurs d'affectation, des conditions, des boucles, des blocs … transformés beaucoup plus petits en termes de sens, ainsi, la syntaxe pendant une longue période n'a pas d' importance. Lutte pour les idéaux des langages de programmation ne sont pas donné la chance de gagner l'un d'entre eux. est obligé de travailler simplement, être stable et complet des outils (compilateur / interpréteur / shell), et comment et quoi écrire / utilisation – prise en charge du programmeur, pas la langue de l'auteur.

Stack a acquis une nouvelle importance dans le processus global du développement des idées et des technologies. Les variables sous la forme dans laquelle ils ont facilement superposés les uns aux autres, et les algorithmes et les opérateurs sont inclus dans un autre. Vous pouvez souvent entendre parler de la pile de protocoles, quand on fournit un autre emploi.

Stack, la fonctionnalité et la récursivité – ne pas synonymes, mais ils se complètent parfaitement, ce qui vous permet de créer des versions uniques de la présentation et le traitement de l'information.