Le coin du vieux barbu

Magazine
Marque
GNU/Linux Magazine
Numéro
156
|
Mois de parution
janvier 2013
|
Domaines


Résumé
La dernière fois, nous avons décortiqué l'une des toute premières entrées de l'ioccc, avec un code datant de 1984. Aujourd'hui, nous allons étudier un bout de code nettement plus récent puisqu'il date de 2011, même s'il s'inspire d'une démo datant de l'Amiga (1986 ou 1987) !Rappelons que le but de cette rubrique est de rendre lisible un programme qui a pourtant été écrit de manière à être difficile à lire. Pour ce faire, nous allons petit à petit transformer un code source en un code équivalent, mais de plus en plus facile à déchiffrer.

La suite est réservée aux abonnés. Déjà abonné ? Se connecter

Sur le même sujet

SpaceVim, une distribution de Vim prête à l'emploi

Magazine
Marque
GNU/Linux Magazine
Numéro
236
|
Mois de parution
avril 2020
|
Domaines
Résumé

Sans aucun lien avec Space Invaders, SpaceVim (justement sans espace entre Space et Vim) vous propose une nouvelle façon de gérer les plug-ins et la configuration de votre éditeur favori. Penchons-nous sur cette solution, pour savoir si le grand ménage de notre .vimrc doit avoir lieu.

Accès aux attributs et méthodes en Python : une autre voie est-elle possible ?

Magazine
Marque
GNU/Linux Magazine
Numéro
236
|
Mois de parution
avril 2020
|
Domaines
Résumé

Vous vous interrogez toujours sur la gestion des accès aux attributs et méthodes de vos objets Python ? Vous aimeriez écrire du code plus strict, mais vous vous demandez si cela serait vraiment pertinent ? Cet article devrait vous amener des pistes de réflexion.

Un jeu de logique en Python

Magazine
Marque
GNU/Linux Magazine
Numéro
236
|
Mois de parution
avril 2020
|
Domaines
Résumé

Dans l’univers des jeux de cartes, beaucoup font plus ou moins appel à la logique. Nous vous présentons ici un jeu directement basé sur la logique propositionnelle. Nous nous proposons d’en présenter les principales caractéristiques et de détailler les algorithmes principaux de l’implémentation en Python.

Et si on déchiffrait la machine Enigma...

Magazine
Marque
GNU/Linux Magazine
Numéro
235
|
Mois de parution
mars 2020
|
Domaines
Résumé

La machine Enigma fut utilisée par les Allemands, pendant la Seconde Guerre mondiale, pour chiffrer des messages secrets. Alan Turing est connu pour avoir fortement contribué à la compréhension du fonctionnement du chiffrement de cette machine. Dans cet article, je vais présenter le modèle M3 de la machine Enigma et proposer une simulation de cette machine utilisant le langage Python.

Par le même auteur

Programmation avec le 6502 : trigonométrons !

Magazine
Marque
Hackable
Numéro
33
|
Mois de parution
avril 2020
|
Domaines
Résumé

Lors du précédent article, nous avons parcouru les différents modes d'adressage du 6502, ce qui nous a permis d'élaborer quelques algorithmes simples, notamment pour réaliser des additions ou soustractions sur des nombres entiers de plus de 8 bits et même, des multiplications. Aujourd'hui, nous allons continuer dans cette voie en nous intéressant à la division et même aux nombres décimaux (à virgule), ce qui nous permettra de mettre un pied dans le monde effrayant de la trigonométrie !

Programmation avec le 6502

Magazine
Marque
Hackable
Numéro
32
|
Mois de parution
janvier 2020
|
Domaines
Résumé

L'article précédent était assez pessimiste et peut-être même un peu rébarbatif, avec cette liste des instructions du 6502. On était arrivé à la conclusion que les possibilités de ce processeur étaient finalement assez limitées : opérations seulement sur 8 bits, pas de multiplications ni de divisions, pas de nombre à virgule, très très peu de registres utilisables (A, X et Y).

Programmation avec le 6502

Magazine
Marque
Hackable
Numéro
31
|
Mois de parution
octobre 2019
|
Domaines
Résumé
Il y a quelques années, les musiques des années 70 et 80 sont revenues à la mode. Puis, cela a été le tour du rétrogaming. Et voici venu le temps du rétrocomputing. Créer de petits programmes ou même des jeux à l’ancienne, tout en assembleur sur de très vieilles machines 8 bits n’est pas si complexe que ça. C’est d’ailleurs le but de cette série, qui s’intéresse à la mise en œuvre d’un des tout premiers microprocesseurs.

Jouons avec les bits

Magazine
Marque
GNU/Linux Magazine
HS n°
Numéro
70
|
Mois de parution
janvier 2014
|
Domaines
Résumé
Le langage C dispose d'opérateurs permettant de tester, modifier et effectuer des opérations au niveau du bit. Ces opérations sont souvent réservées à des utilisations restreintes, alors qu'elles sont ultra-rapides et ont des applications quelques fois insoupçonnées. Une restriction toutefois est que ces opérateurs ne s'appliquent qu'à des entiers (la plupart du temps non signés).

Les règles d'aliasing strictes

Magazine
Marque
GNU/Linux Magazine
HS n°
Numéro
70
|
Mois de parution
janvier 2014
|
Domaines
Résumé
Lors d'un développement, vous êtes peut-être déjà tombé sur le message d'erreur incompréhensible suivant : « Dereferencing type-punned pointer will break strict-aliasing rules ». Ce qui pourrait se traduire par « Déréférencer un pointeur pointant sur deux types différents rompt les règles d'aliasing strictes ». Ce qui n'est toujours pas très clair.

Un peu plus loin avec les macros

Magazine
Marque
GNU/Linux Magazine
HS n°
Numéro
70
|
Mois de parution
janvier 2014
|
Domaines
Résumé

Même si elles ne font pas vraiment partie du langage C à proprement parler, puisqu'elles appartiennent au préprocesseur, les macros sont des outils qui peuvent s'avérer fort pratiques.