Youtube subtitles download by mo.dbxdb.com
ok donc je suis ce programme compilé de
exécuter un nouveau compilateur C sur mon sur mon
macbook et cela ce langage d'assemblage
travaillera sur mon macbook mais il ne sera pas
travaille sur cet ordinateur que j'ai construit
parce que cet ordinateur a son propre
langage d' assemblage que je sorte de
inventé et donc ce que nous aurions besoin de faire
est nous aurions besoin de trouver un compilateur AC
ce serait compiler ce programme pour cette
ordinateur mais depuis que je n'ai pas écrit un
il n'existe pas à la place ce que nous pouvons
faire est en fait une sorte de manuscrit de la
programme de langage d' assemblage nous-mêmes et
c'est ce que j'ai fait ici et ainsi
ce programme est est fondamentalement la
même chose que cela, mais il est écrit dans
le langage d' assemblage pour cela
ordinateur et donc si nous voulons genre de
il suffit de regarder très rapidement zoomer dans un
un peu ici nous aider à voir ce qui se passe
sur mais si nous regardons notre programme C
encore une fois au fond ce que nous faisons ici
ces deux premières lignes est que x est égal à
zéro en fait, nous faisons le y est égal
zéro ici il y a un peu d'un
optimisation que je devais faire parce que
la mémoire sur ce programme est-ce
sont les étudiants sur cet ordinateur et
cet ordinateur n'a que 16 octets de
la mémoire qui n'est pas beaucoup de mémoire à
tous et donc parce que nous avions besoin de trois octets
laissé ici à la fin pour la
les variables XY et ZI devaient faire un peu
peu d'optimisation ici pour faire la
reste du programme en forme et donc le premier
deux lignes est mis y égal à égal à
on me laisse juste rayer cela c'est y
est égal à un est ce que cela fait il est
chargement d' un dans le registre et
c'est stocker dans le e qui est y
en emplacement de mémoire pour e qui est y et
alors c'est c'est en quelque sorte le x est égal à
est égal à 0 parce que si nous ne sommes pas vraiment
sauver et c'est juste genre de sauvé
moi cette ligne de code donc c'est une sorte
de x est égal à 0, puis nous sortons de telle sorte que
donc nous faisons genre de ces un peu
peu hors d'usage mais peu importe
et puis le printf est en quelque sorte ma sortie
ici et ensuite nous faisons l'addition et nous sommes
ajoutant voyons nous ajoutons e donc nous sommes
ajouter Y à X pour que X soit dans le registre
nous ajoutons Y donc c'est gentil de votre part
peut penser à cette ligne comme étant le Z
bien cette ligne ici en fait ces deux
lignes
sont le Z est égal à X plus y parce que cela
stocker un stocke le résultat de
ceci en F qui est l'adresse emplacement F est
Z en est ainsi Z est égal à X plus Y et
alors ces deux lignes sont ici le x
est égal à y parce que nous chargeons d'un
puis en stockant à D so e à D est Y à
X donc x est égal à y et puis ici nous sommes
faire le y est égal à Z et est le même
chose que nous allons de F de F est Z et
adresse a est la variable Y, puis à la
finissons ici, nous nous chargeons à nouveau et c'est
juste si ou nous chargeons la valeur de x dans
le registre et c'est de cette façon quand
nous rebouclage nous affichons la valeur de x
et c’est gentil de nouveau ce genre de
optimisation j'ai fait aussi
plutôt que de le stocker ici et ensuite
le charger à nouveau cela prendrait deux
des octets supplémentaires c'est donc ici et
alors le saut porter donc ce que c'est
dire est que si le résultat de la dernière
Outre qui est ici eu un eu
transporter peu qui signifie que vous le savez
est un ordinateur 8 bits donc si le résultat de
cet ajout a été pris neuf bits et
vous savez parce qu'un bit devait être
porté puis aller vers le haut et c'est
sorte de moyen de détecter si X est
supérieur à 255 parce que s'il
porté dans un bit 9 alors vous savez
quelque chose qui vous prend pas plus de 8
bits pour stocker va être plus grand
que 255 alors si tel est le cas puis sautez
tout le chemin à l' adresse 0 qui ensuite
réinitialise le y est égal à 0 x est égal à 0
sinon il tombe ici et nous sautons
nous sautons seulement à l' adresse 3 qui est
la sortie pour revenir encore à la
printf afin que vous puissiez voir ce programme
est fondamentalement une assemblée autre
assemblage d'une autre compilation je suppose
si vous voulez penser de cette façon
nous avons compilé ce programme C mais
à la place, nous avons compilé pour cela cette
ordinateur construit à la maison ici maintenant la prochaine
pas maintenant que nous avons cette assemblée
la langue est-il de convertir cela en un
au code de la machine et je l' ai donc fait que
ici et faites-le glisser sur vous pouvez voir
tout et donc ce que j'ai fait ici est
est-ce le même programme que nous venons de
a traversé et ce que je l' ai fait est
vient de tout convertir en binaire
parce que quand on programme l'ordinateur
nous allons utiliser ces commutateurs
et nous devons entrer ces choses dans
binaire sur ces commutateurs juste très
encombrant mais heureusement c'est un court
programme et donc en gros les adresses
voici seulement 0 à C hexadécimal
qui est 0 à 1 1 0 0 en binaire et
alors chacun de ces codes op ici chacun de
ces instructions ont une correspondance
Valeur binaire 4 bits et donc je viens
ceux substitués ici et puis plus
de ces instructions ont une sorte de
paramètre qui va avec eux, puis
qui vient juste d'être converti en binaire
ici et c'est donc ce qui va
avant et entrez et vous venez juste genre de
glisser ce sur un peu afin que nous puissions
l'obtenir juste à côté d'ici et zoomer afin
nous pouvons voir ce qui se passe à l'intérieur d'un
programmer ce que je vais arrêter l'horloge
réel rapidement et vient tout effacer
hors de l'ordinateur , puis nous
passer en mode de programmation et
donc en mode de programmation ce que je peux faire est
Je peux définir l' adresse alors c'est tout
zéros et puis je peux définir ici la
données que je veux programmer afin 1 1 1
0 0 0 1 et puis une fois que j'ai
programme dentaire suffit d'appuyer sur ce bouton pour
programme et je peux passer à la
valeur suivante si c'est l'emplacement de la mémoire 1
et ça va être éteindre tous ceux
va être 0 1 0 0 1 1 1 0 et je peux
programmer et je vais aller de l'avant et
programmer le reste de ceci et à travers le
magie du montage vidéo, nous pouvons accélérer cette
pour toi
vous
et là nous allons donc je pense que nous sommes tous
programmé ici pour que nous puissions aller de l' avant et
décaler que retour en mode d'exécution et je vais
zoomer ici pour que vous puissiez voir ce qui est
aller et obtenir ceci ici, je pense que vous
peut tout voir là - bas et maintenant nous
peut réinitialiser l'ordinateur et essayer de courir
cela et il semble que cela fonctionne
ouais on y va ça compte à travers
tous les chiffres de Fibonacci et il semble
comme il pourrait y avoir un bug, il ressemble
il manque le dernier 233 donc
il y a probablement un petit bug
avec la logique de saut
peut-être que je suis oh oui parce que je sors
d'abord, puis en ajoutant bien peut-être bien
Je vais résoudre ce problème un peu plus tard, mais
assez proche, nous obtenons Fibonacci
Nombres Subtitles End: mo.dbxdb.com