Connaissances Informatiques >> programmation >> Computer Programming Languages >> Content
  Derniers articles
  • Comment créer un bouton de réiniti…
  • Comment code dans XSPF 
  • Quels sont conversion tags 
  • Qui a inventé la programmation info…
  • Types d'algorithmes de clustering 
  • Comment écrire une boucle Pseudocod…
  • Comment personnaliser le vérificate…
  • Pourquoi utiliser une programmation …
  • Algorithmes de base dans les structu…
  • Comment puis-je enregistrer un fichi…
  •   Computer Programming Languages
  • C /C + + Programming

  • Computer Programming Languages

  • Delphi Programming

  • Programmation Java

  • Programmation JavaScript

  • PHP /MySQL Programmation

  • programmation Perl

  • Programmation Python

  • Ruby Programming

  • Visual Basics programmation
  •  
    Computer Programming Languages

    Combien de compilateurs, c'est-à-dire les extrémités frontales et le dos, sont nécessaires pour les langages M n machines en utilisant une langue intermédiaire?

    Voici comment décomposer les exigences du compilateur pour plusieurs langues et machines à l'aide d'un langage intermédiaire:

    Comprendre les composants

    * frontal (compilateur): Cette partie du compilateur lit le code source dans un langage de programmation spécifique et le traduit en une représentation intermédiaire (IR). Vous aurez besoin d'un frontal pour chaque langage de programmation que vous souhaitez prendre en charge.

    * Langue intermédiaire (IR): Il s'agit d'une langue commune qui sert de pont entre les extrémités avant et les extrémités arrière. Il est conçu pour être indépendant de la machine.

    * Back End (compilateur): Cette partie du compilateur prend l'IR et génère du code machine pour une machine cible spécifique. Vous aurez besoin d'un back-end pour chaque architecture de machine que vous souhaitez prendre en charge.

    Calcul

    * Front Fin: Vous avez besoin d'un frontal pour chaque langue: m front

    * Back Ends: Vous avez besoin d'un back-end pour chaque machine: n arrière

    total: Vous avez besoin m + n compilateurs (extrémités avant et à l'arrière).

    Exemple

    Disons que vous avez:

    * m =3 Langages de programmation (C ++, Python, Java)

    * n =2 Architectures de machine (x86 et bras)

    Vous auriez besoin:

    * 3 les extrémités avant (une pour chaque langue)

    * 2 arrière (un pour chaque architecture)

    * total:5 compilateurs

    Avantages d'une langue intermédiaire

    L'utilisation d'une langue intermédiaire offre plusieurs avantages:

    * Réutilisabilité du code: Le code IR peut être utilisé par différentes extrémités frontales et à l'arrière, réduisant l'effort de développement.

    * portabilité: Le code compilé avec l'IR peut être exécuté sur n'importe quelle machine avec une extrémité arrière correspondante.

    * Optimisation: Des optimisations peuvent être appliquées au niveau IR, bénéficiant à toutes les langues et aux machines.

    Remarque importante: Le choix du langage intermédiaire est crucial. Il doit être efficace, bien adapté à l'optimisation et avoir un écosystème mature.

     
    Article précédent:
    Article suivant:
    Articles recommandés
  • Comment tuer une commande à l'aide Python 
  • Quelle est la signification de la conversion de la valeur et cordes 
  • Les avantages des algorithmes Rijndael 
  • Comment écrire un programme qui prend 10 entiers comme entrée 
  • Comment calculer le jour de la semaine pour une année 
  • Comment cacher un programme en AppleScript 
  • Les utilisations de Python Rendement 
  • Comment faire pour résoudre des problèmes mathématiques binaires 
  • Comment lire le code binaire 
  • Comment puis- je changer le mot de passe via une invite de commande 
  • Connaissances Informatiques © http://www.ordinateur.cc