2009-04-09 10 views
5

J'ai un examen à venir sur le code d'assemblage Motorola HC12. Des conseils pour améliorer mon temps à lire et à comprendre le code asm efficacement et avec précision? Mes problèmes: Je prends beaucoup de temps pour lire le code ASM avec précision et si je me dépêche, ma pile est foirée!Conseils pour lire le code ASM?

Répondre

7

Le code ASM est difficile à lire. Il n'y a pas de truc magique qui facilite le décryptage.

Les seuls conseils que je peux vous donner: Ajouter lot de commentaires au code. Documentez ce que fait une séquence d'instructions. Ne vous concentrez pas sur les instructions, sauf si vous devez le faire.

Les compétences de lecture en assembleur peuvent également être mises en pratique rapidement. Si vous passez quelques soirées à écrire de petits programmes de jouets, vous serez en mesure de comprendre facilement le code des autres. Vous développerez la compétence pour vous concentrer sur les choses importantes, de sorte que vous aurez moins de code à lire globalement.

2

Je me souviens de mon institut. J'ai imprimé un programme d'assembleur difficile sur un rouleau de papier et ensuite j'ai couvert ce rôle avec des lignes de couleur (par des crayons), en désignant des procédures, des blocs, des sauts et d'autres choses. Peut-être existe-t-il des programmes de "visualisation" du code de montage de Motorola, mais je ne le sais pas.

+0

Veuillez ne pas utiliser de rouleau de papier hygiénique! :))) – macropas

+2

bon point! À l'époque où j'étais à l'université, j'ai utilisé l'heure dans les transports en commun (deux heures par jour) pour lire et déboguer mon propre code asm. –

2

Puisqu'il s'agit d'un examen, manipulez-le comme n'importe quel autre examen - organisez! Vous devez être capable d'identifier rapidement les blocs de code. Commencez par les instructions de branchement/retour qui interrompent le flux de contrôle. Ceux-ci indiquent typiquement une sous-routine de boucle ou de marque. Une fois que vous avez et l'idée de la façon dont le code s'écoule, puis comprendre ce qu'il fait dans chaque bloc.

3

This blog post est un peu lié. C'est une série de visualisations de jeux Atari 2600, leur code machine et leurs segments de données, illustrés par des lignes indiquant des sauts.

Ce n'est pas une réponse, mais c'est intéressant.

Questions connexes