Z80 et Z180 : l'assembleur c'est bien, le C c'est mieux

Magazine
Marque
Hackable
Numéro
51
Mois de parution
novembre 2023
Spécialité(s)


Résumé

Dans les précédents articles, qu'il s'agisse de ceux concernant notre ordinateur 8 bits sur platine à essais ou de la carte industrielle vintage à base de Z180, nous nous en sommes tenus à utiliser le langage le plus proche du matériel, l'assembleur. Mais l'informatique moderne ne serait pas ce qu'elle est aujourd'hui si les développeurs d’antan s'étaient limités à un langage, certes puissant, mais peu abstrait et souvent considéré comme difficile à apprendre et à maîtriser. Nous allons donc marcher sur les pas de ces développeurs et élever notre niveau de programmation en utilisant le plus plaisant des langages, celui-là même créé par Dennis Ritchie en 1972, le C ! Mais pour cela, il y a un peu de travail à faire...


Notre précédent code assembleur nous a permis de faire communiquer notre ordinateur sur platine via son interface série, que nous avions dûment configurée en initialisant quelques registres. De la même façon, nous l’avons également fait avec la carte industrielle et son UART intégrée au processeur Z180. Mais afficher ainsi, sur l'écran de l'émulateur de terminal série, une suite de « A » ou même une chaîne stockée en ROM n'est pas très intéressant. Bien sûr, nous pourrions poursuivre en assembleur et obtenir quelque chose de plus interactif, mais à quel prix ! Au-delà de la simple envie de revenir en territoire connu avec un langage de haut niveau tel qu'on l'utilise sur Arduino, Pi Pico ou ESP32, basculer vers le C offre un avantage qui tient en un seul mot, qui est également sa raison d'être historique : la portabilité.

Bien entendu, la portabilité n'est pas quelque chose de magique et d'absolu, et doit être vue comme une notion relative. Vous ne...

Cet article est réservé aux abonnés. Il vous reste 96% à découvrir.
S'abonner à Connect
  • Accédez à tous les contenus de Connect en illimité
  • Découvrez des listes de lecture et des contenus Premium
  • Consultez les nouveaux articles en avant-première
Je m'abonne


Article rédigé par

Par le(s) même(s) auteur(s)

Alimentation de laboratoire ALIENTEK DP100 : petite, mais costaud

Magazine
Marque
Hackable
Numéro
55
Mois de parution
juillet 2024
Spécialité(s)
Résumé

L'alimentation de laboratoire fait partie des outils classiques lorsqu'on fait de l'électronique et de l'embarqué. Ceci prend généralement la forme d'un équipement volumineux destiné à prendre place sur un bench, entre la station de soudure et l'oscilloscope. Cependant, les mœurs ont sensiblement changé et souvent quelque chose de plus compact, pouvant prendre place sur un bureau à gauche du clavier est non seulement suffisant, mais plus adapté et ergonomique pour de « petits travaux ». Dans cette catégorie « outil miniature », je vous présente donc l'ALIENTEK DP100 USB-C...

Édito

Magazine
Marque
Hackable
Numéro
55
Mois de parution
juillet 2024
Résumé

Quelque chose est sur le point de changer dans l'embarqué... et pas seulement.

La sécurité des systèmes est plus que jamais sur le devant de la scène. L'industrie entière s'est enfin rendu compte des répercussions potentiellement catastrophiques de failles de sécurité au plus bas niveau et redouble d'efforts pour « régler » le problème. Mais on a beau tenter de « sécuriser » les systèmes, les applications, les services et même les langages, si une faiblesse existe, héritée de plusieurs dizaines d'années d'histoire de l'informatique moderne, elle sera forcément exploitée. Cette faiblesse est la manière dont l'accès à la mémoire est géré par les processeurs et la corruption de cette mémoire, d'une façon ou d'une autre, représente statistiquement la principale cause des failles de sécurité.

Mon premier projet FPGA : un ordinateur 8 bits complet en VHDL

Magazine
Marque
Hackable
Numéro
55
Mois de parution
juillet 2024
Spécialité(s)
Résumé

Zilog a annoncé dernièrement la fin de la production du Z80 après près de 50 ans de bons et loyaux services. Nous sommes loin d'une pénurie de ces vénérables processeurs 8 bits, mais voilà l'excuse parfaite pour découvrir comment créer une architecture complète à base de Z80 dans un circuit logique programmable, et plus exactement un FPGA. L'objectif est simple : réunir tous les éléments de notre ordinateur 8 bits sur platine à essais que nous avions détaillé dans les pages des numéros précédents et lui faire exécuter un code en C !

Les derniers articles Premiums

Les derniers articles Premium

Le combo gagnant de la virtualisation : QEMU et KVM

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

C’est un fait : la virtualisation est partout ! Que ce soit pour la flexibilité des systèmes ou bien leur sécurité, l’adoption de la virtualisation augmente dans toutes les organisations depuis des années. Dans cet article, nous allons nous focaliser sur deux technologies : QEMU et KVM. En combinant les deux, il est possible de créer des environnements de virtualisation très robustes.

Brève introduction pratique à ZFS

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Il est grand temps de passer à un système de fichiers plus robuste et performant : ZFS. Avec ses fonctionnalités avancées, il assure une intégrité des données inégalée et simplifie la gestion des volumes de stockage. Il permet aussi de faire des snapshots, des clones, et de la déduplication, il est donc la solution idéale pour les environnements de stockage critiques. Découvrons ensemble pourquoi ZFS est LE choix incontournable pour l'avenir du stockage de données.

Générez votre serveur JEE sur-mesure avec Wildfly Glow

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Et, si, en une ligne de commandes, on pouvait reconstruire son serveur JEE pour qu’il soit configuré, sur mesure, pour les besoins des applications qu’il embarque ? Et si on pouvait aller encore plus loin, en distribuant l’ensemble, assemblé sous la forme d’un jar exécutable ? Et si on pouvait même déployer le tout, automatiquement, sur OpenShift ? Grâce à Wildfly Glow [1], c’est possible ! Tout du moins, pour le serveur JEE open source Wildfly [2]. Démonstration dans cet article.

Les listes de lecture

9 article(s) - ajoutée le 01/07/2020
Vous désirez apprendre le langage Python, mais ne savez pas trop par où commencer ? Cette liste de lecture vous permettra de faire vos premiers pas en découvrant l'écosystème de Python et en écrivant de petits scripts.
11 article(s) - ajoutée le 01/07/2020
La base de tout programme effectuant une tâche un tant soit peu complexe est un algorithme, une méthode permettant de manipuler des données pour obtenir un résultat attendu. Dans cette liste, vous pourrez découvrir quelques spécimens d'algorithmes.
10 article(s) - ajoutée le 01/07/2020
À quoi bon se targuer de posséder des pétaoctets de données si l'on est incapable d'analyser ces dernières ? Cette liste vous aidera à "faire parler" vos données.
Voir les 97 listes de lecture

Abonnez-vous maintenant

et profitez de tous les contenus en illimité

Je découvre les offres

Déjà abonné ? Connectez-vous