Modele uniplat

Pour écrire un programme de modèle plat, spécifiez la directive. 386 ou. 486 avant. MODÈLE FLAT: la gestion de la mémoire et la traduction d`adresses peuvent encore être implémentées au-dessus d`un modèle de mémoire plate afin de faciliter la fonctionnalité du système d`exploitation, la protection des ressources, le multitâche ou pour augmenter la capacité de mémoire au-delà des limites imposée par l`espace d`adressage physique du processeur, mais la caractéristique clé d`un modèle de mémoire plane est que l`intégralité de l`espace mémoire est linéaire, séquentielle et contiguë de l`adresse zéro à MaxBytes − 1. Dans un simple contrôleur, ou dans une application intégrée de tâche unique, où la gestion de la mémoire n`est pas nécessaire, ni souhaitable, le modèle de mémoire plate est le plus approprié, car il fournit l`interface la plus simple du point de vue du programmeur, avec direct accès à tous les emplacements de mémoire et à la complexité minimale de la conception. Le modèle de mémoire plate est une configuration non segmentée disponible dans les systèmes d`exploitation 32 bits. Dans un système informatique à usage général, qui nécessite le multitâche, l`allocation des ressources et la protection, le système de mémoire plate doit être complété par un schéma de gestion de la mémoire, qui est généralement implémenté par le biais d`une combinaison de matériel dédié ( l`intérieur ou à l`extérieur de la CPU) et le logiciel intégré au système d`exploitation. Le modèle de mémoire plate (au niveau de l`adressage physique) offre toujours la plus grande souplesse pour implémenter ce type de gestion de la mémoire. Par conséquent, l`adressage lointain ne s`applique pas aux programmes de modèle plat.

La plupart des architectures de processeur implémentent une conception de mémoire plate, y compris tous les premiers processeurs 8-bit, la série de 68000 de Motorola, etc. Une exception a été le 8086 d`origine, le premier microprocesseur 16 bits d`Intel, qui a implémenté un modèle de mémoire segmentée brute qui permettait d`accéder à plus de 64 KiB de mémoire sans le coût d`étendre toutes les adresses à plus de 16 bits. Le modèle plat est semblable au modèle minuscule en ce que tout le code et les données vont dans un seul bloc de mémoire 32-bit-adressable. Dans les architectures x86, lorsque vous opérons en mode réel (ou émulation), l`adresse physique est calculée comme: [2] pour les exemples liés à MASM, téléchargez les exemples de compilateur à partir des exemples Visual C++ et de la documentation connexe pour Visual Studio 2010. Les adresses et les pointeurs transmis aux services système sont toujours des adresses et des pointeurs de near32 bits 32. LangType paramètre facultatif qui définit les conventions d`appel et de dénomination pour les procédures et les symboles publics. L`exemple suivant illustre l`utilisation du. Directive MODEL.