Infos Perso
photo3.jpg Maître de Conférences au Département Informatique de l'Institut Universitaire de Technologie de l'Université Bordeaux I

Je suis membre du Laboratoire Bordelais d'Informatique (LaBRI)

Pour me joindre : michel.billaud@labri.fr, tel +33 (0) 5 4000 6921

 
  Nouveaux cours
playmo.jpg Au bout d'un certain nombre d'années, il arrive que les programmes pédagogiques nationaux des DUT soient mis à jour, et c'est l'occasion de faire évoluer les cours. J'ai donc eu l'occasion de "monter" deux petits cours à caractère éphémère, dont je "déstocke" ici, en l'état, les documents, en particulier les notes de cours que j'avais préparées (et qui n'ont pas été utilisées complètement) :
  • en 2013 un cours de programmation à bas niveau (12h en première année), comme préfiguration d'un module prévu pour le futur PPN, qui n'était pas encore publié. L'objectif du module est de fournir les bases nécessaires à la programmation en C (prérequis pour la programmation système en 2ième année), et une compréhension de l'architecture interne d'une machine (pour la programmation en assembleur et le cours sur fonctionnement des systèmes d'exploitation).

    Pour l'assembleur, on montre qu'une architecture suffisamment simple (la machine à un seul registre, chargement/rangement direct ou indirect est inspiré des petits ordinateurs des années 60) suffit pour retrouver les éléments de la programmation habituelle : tableaux, sous-programmes etc.

    En C on s'applique à "redescendre" de C++, pour se focaliser sur les élements de bas niveau. L'application est l'écriture d'un simulateur en C. notes de cours, exercices, devoirs etc.

  • En 2014, un cours de théorie des langages (16h) pour 2ième année de DUT, pour remplacer un collègue mathématicien qui assurait ce cours (Dans le nouveau PPN les cours de langages est maintenant en première année). On y parle de langage rationnels, de grammaires, de syntaxe des langages de programmation, etc. notes de cours, exercices, devoirs etc.

 
  Ca vient de sortir
PHOTOS/fenetres2.jpg Comme idée de cadeau pour les fêtes : JF2, un nouveau langage de programmation. Le chaînon manquant entre l'assembleur et Fortran 0.

Dernières nouvelles : réuni au grand complet, le comité de normalisation a décidé d'ajouter les instructions call et return dans la nuit du 31 décembre. Un exemple de code

# 
# ceci est un exemple (et un commentaire)
#
     print "calcul de factorielle"
     call lecture
     call calcul
     call affichage
     stop

lecture
     declare n
     print "n="
     input n
     return

calcul
     declare i, fac       
     i   = 2
     fac = 1
boucle     
     jump fin if i > n
     fac = fac * i
     i   = i + 1
     jump boucle
fin
     return

affichage
     println "resultat = ", fac
     return
Pour en savoir plus, lisez le manuel de référence de la version 2013-a.

Vous trouverez l'interprète, des exemples et la documentation complète dans le répertoire jf2. Parmi les exemples, quelques classiques non triviaux : tours de Hanoi, probleme des 8 reines, etc.

Pour information, l'interprète (juste 875 lignes de Python, pour 25 classes et 98 méthodes à ce jour) analyse le texte par descente récursive, construit un tableau d'objets representant les instructions, qui sont ensuite interprétees une à une. Et le nom JF2 signifie Just For Fun.

 
  Enseignements
playmo.jpg [2013-2014] [2012-2013] [2010-2011] [2009-2010] Documents pour le soutien en programmation
  • Fiches d'explication pour la programmation objets (et autres)
  • Documents du cours réseau (ASR4)
  • Documents du cours "Utilisation des systèmes Informatiques" (ASR1/Vietnam)
  • Documents du cours "Utilisation des systèmes Informatiques" (ASR1) [2008-2009] [2007-2008]
    • Documents du cours système de second semestre
    [2007-2008]
    • Documents du module complémentaire ASR4-Réseaux
    [2006-2007] [2004-2005]
  •  
      Polycopiés et supports de cours
    PHOTOS/petit-clavier.jpg
    • Cobol [+]
    • Architecture des systèmes informatiques[+]
    • Fortran 77 [+]
    • [Revu !]Programmation système et réseau [-]
      Système et réseau 2ième année IUT
      Polycopié (95 pages) Version corrigéee et étendue Juillet 2004, dernières corrections Février 2013.

      Entrées-sorties, processus, signaux, threads, pipes, IPC, sockets locaux et réseau, TCP, UDP, serveur Web, etc.

      Disponible en format PDF

      Le source de ce document, ainsi que les exemples cités, sont ici.

    • Programmation fonctionnelle en Lisp [+]
    • Programmation fonctionnelle en Hope [+]
    • Widgets Athena [+]
    • Intranet sous Linux [+]
    • Administration Linux [+]

     
      Outils et développements
    PHOTOS/fenetres2.jpg
    • [Nouveau] PHP-GPIB - une extension de PHP pour piloter les instruments GPIB - IEE-488 [+]
    • MokKRT - un pilote pour lire les cartes à puces [+]
    • RelaiX - un proxy pour X-Window [+]
    • Scanner - Utilisation d'un scanner partagé via le Web [+]
    • Xmed - petit éditeur à balises, basé sur Xedit [+]
    • Xpand - Utilitaire de fabrication de documents par expansion de commandes. [+]
    • Nautil - pilote Linux 2.0.x pour carte de numérisation video NAUTIL [+]
    • C4000 - Programme pour piloter un imageur CATHI 4000 (BG Télématique) [+]
    • Pulsard - Programme de surveillance pour onduleur Merlin Gerin Pulsar ES8+ [+]

     
      Portages
    fils.jpg
    • Un patch pour faire fonctionner RDesktop sur des claviers de non-PCs [+]
    • Logiscan - portage du pilote Logi32 pour numériseur à main. [+]

     
      Publications
    PHOTOS/fenetres2.jpg

     
      Documentation
    playmo2.jpg
    • [Nouveau] Utiliser User-Mode Linux (série de 3 articles)[+]
    • [Nouveau] Monter son répertoire NOVELL depuis Linux ? [+]
    • [Nouveau] Monter son répertoire d'accueil par SAMBA à travers un firewall[+]
    • [Février 1999] Installer Linux sur 4 mégas ? [+]
    • Que faire d'un vieux 8088 ? [+]

     
      Divers
    playmo.jpg
    • Fichiers MIDI [+]
    • Je m'occupe de quelques sites web... 3 4 5