Pouvez-vous expliquer à quelqu'un qui ne sait presque rien sur les ordinateurs et comment comprendre la relation entre le code binaire, un langage informatique et le matériel de programmation?

Je comprends ce qui est le code binaire, est ce qu’une langue de l’ordinateur et ce qui est matériel. Mais je ne pourrais jamais comprendre comment est impliqué le code binaire lorsque vous utilisez un langage informatique et comment un langage informatique peut envoyer les instructions pour le matériel pour faire ce que vous voulez qu’il fasse. Peut quelqu'un s’il vous plaît cela m’expliquer de façon simple? J’apprécierais vraiment.

Réponse

Votre ordinateur se compose essentiellement de marche-arrêt (Remarque : deux valeurs) commutateurs abstraites dans des structures extrêmement complexes. Ordinateurs de compréhension consiste à identifier les dispositifs physiques d’isomorphismes beween et des concepts abstraits.

La première étape de l’abstraction au-delà du niveau de circuit est base logique booléenne

Fig. 1: Portes logiques booléens fondamentaux

Ces portes acceptent deux valeurs entrées, produisent des extrants à deux valeurs qu’on peut considérer que 0 ou 1 (ou false et true). Physiquement, ces zéros et uns correspondent à des tensions différentes (par exemple, 0 pouvait être considérée comme rien en dessous de 3 V). Les entrées et les sorties sont fils. Les portes sont habilement arrangés transistors (commutateurs) et les résistances.

A partir de là, vous pouvez facilement faire des circuits qui effectuent conceptuellement arithmétiques et complexes opérations logiques sur les valeurs binaires...

Fig. 2: Un additionneur complet seul bit

.. .et les circuits qui stockent des valeurs binaires

Fig. 3: Un seul bit SR loquet

Ce processus d’abstraction continue à aller jusqu'à ce que vous avez touché quelque chose qui ressemble à peu près à l’un d'entre eux

Fig. 4: Architectures informatiques fondamentaux

À ce stade, vous avez une chose qui s’occupe des mathématiques et de logique (le processeur) et une chose qui stocke le code et les données (mémoire). N’oubliez pas que peu importe la complexité de ce système obtient, ses constituants fondamentaux encore ne reconnaissent que deux valeurs (sur et en dehors).

Ingénieurs devaient venir avec un modèle de calcul qui utilise uniquement deux valeurs

Instructions (conceptuellement ce sont des séquences de zéros (off) et ceux qui (sur)) résident en mémoire. Quand vient le temps d’exécuter une instruction, le cpu il charge de la mémoire et l’interprète. Cela nécessite un régime rigide de ce que signifient ces zéros et uns.

Instructions ont une largeur fixe (nombre d’uns et de zéros) et différents groupes de chiffres spécifient des choses différentes. Ce qui préciserait une instruction d’addition? Au minimum, il a besoin d’un groupe de chiffres qui indiquent le processeur pour exécuter une opération d’ajout (peut-être les trois premiers chiffres doivent être 010), les adresses de mémoire des adduits et l’adresse de mémoire de l’emplacement pour stocker la somme.

Une réalisation cruciale, c’est que dans cette représentation, code et les données sont exactement les mêmes

Cela signifie qu’ils peuvent tous deux vivent dans le même type de circuit de mémoire. 010011001010 en mémoire peut signifier l’ajout de la mémoire de valeur [1] à la mémoire de valeur [2] et mettre la somme en mémoire [3], mais il pourrait tout aussi facilement être le numéro 1 226 (base 10).


Tags: Programmation informatique, Langages de programmation, Binaire (système de numération), Exhaustivité de Turing, Machine de Turing, Alan Turing, Explications, Matériel informatique