Meilleure réponse
Excellente question!
La sémantique dans le langage fait référence à la manière dont le sens change si la structure change; dans la sémantique de conception ne dépendent pas de la séquence (comme dans la langue écrite ou parlée), mais dans les éléments et comment ceux-ci interagissent: matériau, taille, forme, texture, couleur; tous ces éléments fournissent des indices sémiotiques qui vous permettent de comprendre comment interagir avec un design particulier.
Par exemple, lutilisation dun certain matériau peut vous faire penser quun objet est cher ou bon marché; la forme (taille par exemple) peut donner un indice si elle est destinée à des personnes plus jeunes ou plus âgées (pensez par exemple aux blocs de construction en plastique, comme lego). La position dune chaise peut communiquer quelle est destinée à la personne la plus importante de la réunion, et ainsi de suite.
Les designers doivent prendre en compte toutes ces informations subtiles (et pas si subtiles) afin de créer des objets avec lesquels les gens peuvent interagir, sans manuels ou être gênés de ne pas savoir quoi faire.
Je recommanderais dexplorer la théorie de la culture matérielle.
Réponse
La syntaxe et la sémantique font toutes deux partie de la communication entre eux et avec dautres entités, comme les ordinateurs.
La syntaxe fait référence à la arrangement grammatical des mots et signes de ponctuation dans les phrases.
La sémantique fait référence à la signification de mots et de signes de ponctuation disposés dune manière syntaxiquement acceptable.
Considérons une syntaxe corr ect exemple qui ne peut pas, dans un premier temps, être sémantiquement compris par notre compilateur en anglais clair, qui considère quune phrase est sémantiquement comprise lorsquelle peut être réduite à une forme quun processeur informatique Intel x86 peut exécuter.
Le phrase en surbrillance dans ce programme…
… a évidemment besoin de travail.
Le problème est que le compilateur ne sait pas ce quest une« tirelire ». Désormais nous savons quune tirelire possède de nombreuses caractéristiques (taille, forme, couleur, etc.)…
… mais la seule chose que le programme a besoin de savoir sur une tirelire est quelle peut contenir de largent en plusieurs montants. Nous ajoutons donc une définition simple le long de ces lignes (flèche rouge), et essayons de recompiler notre programme:
Rats! Ne communique toujours pas. Peut-être devrions-nous parler plus fort !!! Mais non, langlais simple nest pas sensible à la casse. Et attendez… lerreur a changé. Cette fois, je pense que c’est le mot «dollar» que l’ordinateur ne comprend pas. Nous expliquons donc «dollar» comme indiqué ci-dessous et tentons de recompiler:
Rats encore! Eh bien, voyons si nous pouvons résoudre ce problème en ajoutant une phrase expliquant au compilateur comment penser à quelques centimes:
Et voilà ! Cette fois, lorsque nous compilons, nous sommes sémantiquement compris, et lorsque nous exécutons le programme, cela fonctionne (sortie de la console ci-dessous):
Pendant ce temps, à lintérieur…
Cest ainsi que la compréhension sémantique de cette phrase a été atteinte dans le cerveau du compilateur.
• «10 dollars» a été reconnu comme un littéral numérique suivi dune unité de mesure, et a été converti en une variable numérique dune valeur de 1 000 (10 dollars fois 100 centimes par dollar).
• «Une tirelire» a été comprise comme une demande dune nouvelle variable locale de type «tirelire» – qui se réduit au type de base «nombre» – et un espace pour cette variable, initialisé à zéro, a été alloué sur la pile.
• La phrase « Ajouter 10 dollars à une tirelire » a été réduite, en interne, à lessentiel bâclé – « Ajouter [dollars] dans / dans / à [tirelire] » – où les mots dans les crochets sont des noms de type.
• Aucune routine de ce type na été trouvée dans le programme code ou dans le « Noodle » – la bibliothèque en anglais simple de types, variables et routines dandy pratiques – ainsi les variables ont été réduites à leurs types de base, une à la fois, chaque combinaison étant vérifiée pour une routine correspondante en descendant.
• Au niveau inférieur – «Ajouter [numéro] dans / dans / à [numéro]» – un en-tête de routine correspondant a été trouvé dans le Noodle. Eureka! Plus précisément, le deuxième en-tête de cette routine…
… dont le corps a été écrit, comme vous pouvez le voir, dans un langage qui Les cerveaux Intel x86 peuvent comprendre (les instructions du langage assembleur en bleu sont des commentaires).
• Le compilateur a donc généré les instructions Intel x86 requises pour (a) pousser les adresses des deux variables sur la pile, et pour (b) appelez la routine ci-dessus.
Et cest à peu près tout pour cette phrase. Le reste du programme a été compilé de la même manière.
Compréhension sémantique.Une rencontre des esprits.
Et voilà!