Clément MILVILLE / Edouard SIMON. Projet CodeWar. Enseignant tuteur: Michaël Hauspie 1/17
|
|
- Cyprien Sévigny
- il y a 8 ans
- Total affichages :
Transcription
1 Projet CodeWar Enseignant tuteur: Michaël Hauspie 1/17
2 2/17
3 Remerciements: Nous tenons à remercier tout particulièrement notre tuteur M. Michaël HAUSPIE pour son aide, ses conseils, ses avis et sa disponibilité tout au long de la réalisation de ce projet. Merci également à notre ami Google et aux différents sites de développements qui nous ont permis de trouver de nombreuses informations précieuses ont développement de notre projet. 3/17
4 Résumé Codewar est un jeu dont le principe est de faire se battre des processeurs les uns contre les autres. Le but de notre projet est donc de créer un jeu de ce type en C++, pour cela nous avons développé un émulateur de processeur capable de traiter des instructions en langage assembleur. 4/17
5 Table des matières Introduction... 6 I. Présentation du projet... 7 A. CodeWar... 7 B. Intérêts du projet... 8 C. Structuration du projet...9 II. Réalisation du projet A. Classe Processeur...10 B. Classe Instruction...11 C. Exécution...12 III. Bilan A. Difficultés rencontrées...13 B. Améliorations possibles C. Bilan personnel...15 Conclusion Glossaire /17
6 Introduction Pendant notre quatrième et dernier semestre de D.U.T Informatique, nous avons eu à mener à bien un projet tuteuré afin de mettre en pratique nos connaissances et nos compétences en développement. Le principe de notre projet est de développer un émulateur de processeur exécutant les instructions assembleurs à partir d'un fichier binaire en vue de créer un jeu dans lequel des processeurs pourraient se confronter. Pour réaliser ce projet nous avons eu à structurer correctement notre code pour pouvoir travailler plus facilement et surtout plus «proprement». Introduction 6/17
7 I. Présentation du projet A. CodeWar Le jeu CodeWar est un jeu bien connu des développeurs et autres «geeks», son principe est de mettre en conflit des processeurs placés dans un tableau d'une taille de 16 par 16 cases. Ces 256 processeurs vont donc devoir s'affronter avec pour but d'occuper un maximum de mémoire en un minimum de temps. Pour cela chaque processeur peut exécuter des instructions qui adressent la mémoire de leurs adversaires. Le développement d'un jeu comme celui ci aurait été trop long, c'est pourquoi notre projet ne portait pas sur le jeu en son intégralité mais uniquement sur la création d'un simulateur de processeur capable d'exécuter des instructions assembleurs contenues dans un fichier binaire. Nous avons donc développer cet émulateur de processeur en langage C++, le langage devant être interpréter par le processeur est de l'assembleur comme celui utilisé par les architectures processeurs semblables à celle du Motorola mais simplifiées. I. Présentation du projet 7/17
8 B. Intérêts du projet Ce projet n'était pas le plus facile parmis ceux qui nous ont été proposé dans le cadre des projets tuteurés, cependant il nous à semblé intéressant de comprendre plus précisément le fonctionnement d'un processeur et son architecture. Au début de notre quatrième et dernier semestre, nous n'avions pas encore travailler en C++, nous avons donc du apprendre ce langage afin de pouvoir effectuer ce projet. Grâce à nos connaissances en langage C et en programmation objet, l'apprentissage de ce langage se fit assez rapidement durant les heures de TD et de TP. Pour réaliser ce projet, il nous a également fallu comprendre le principe de fonctionnement d'un processeur dans son intégralité, puisque nous allions devoir reproduire ce mode de fonctionnement. I. Présentation du projet 8/17
9 C. Structuration du projet Afin de faciliter la réalisation de notre projet, nous avons commenceé par structurer notre programme en deux classes différentes: la classe Processeur, contenant toutes les méthodes permettant aux processeurs d'exécuter des instructions, et la classe Instruction qui contient tout le code permettant d'interpréter des instructions assembleur afin de les rendre compatible avec notre processeur. Chacune de ses classes est composée de deux fichiers: un fichier.h et un fichier.cpp; le fichier.h contenant toutes les déclarations de méthodes et de variables, et le fichier.cpp contenant tous les algorithmes de traitement. Vous trouverez dans la partie suivante une explication détaillée du rôle de chacune de ses deux classes. I. Présentation du projet 9/17
10 II. Réalisation du projet A. Classe Processeur La classe Processeur comporte le code permettant d'exécuter les instructions assembleur. Cette classe contient la déclaration de deux tableaux: un de 8 short représentant le registre du processeur et un second de 256 char, permettant de simuler la mémoire vive. Nous déclarons également une variable de type short, nommée opcode permettant de stocker le code représentant les instructions à exécuter. En ce qui concerne les méthodes de la classe Processeur, les plus importantes sont: -getopcode: permet de récupérer l'opcode en allant le chercher dans la mémoire vive. -ExecuterCycle: permet d'effectuer toutes les actions contenues dans une instruction. -lirefichier: se charge d'ouvrir le fichier binaire contenant les instructions et de stocker son contenu dans la mémoire du processeur. Ces méthodes sont déclarées dans le fichier Processeur.h et sont implémentées dans le fichier Processeur.cpp II. Réalisation du projet 10/17
11 B. Classe Instruction La classe Instruction comporte les différents codes source effectuant le traitement nécessaire à chaque instructions. Elle possède deux méthodes virtuelles: -La méthode execute qui prend en paramètre un opcode et un processeur. -La méthode décoder qui va permettre de décoder l'opcode afin de le rendre «lisible» par le processeur. La classe Instruction possède également ses propres classes permettant de différencier les instructions en fonction de leur nombre d'opérandes; il s'agit des classes ZeroOperande, UnOperande et DeuxOperande. Chacune des instructions héritera de ces méthodes suivant le nombre de paramètres dont celles-ci ont besoin. II. Réalisation du projet 11/17
12 C. Exécution L'exécution du programme se fait dans le «Main» de la classe Processeur. Cette exécution se fait en plusieurs étapes: Premièrement on créé un nouveau processeur en faisant appel à son constructeur puis on ouvre le fichier binaire passé en paramètre lors de l'appel du programme (à défaut un fichier binaire placé dans le répertoire du projet), cette lecture se fait grâce à la méthode LireFichier de la classe Processeur. Ensuite, pour un nombre de cycles définis préalablement, on appelle la méthode ExecuterCycle afin qu'elle exécute les instructions lues dans le fichier binaire, afin de vérifier si l'exécution s'est bien déroulée, on affiche l'état du registre et de la mémoire après chaque exécution. II. Réalisation du projet 12/17
13 III. Bilan A. Difficultés rencontrées La réalisation de ce projet ne s'est pas faites très facilement. Effectivement, nous avons eu à faire à de nombreux questionnements et de nombreux problèmes. Tout d'abord, nous avons eu du mal à trouver une bonne façon de structurer nos fichiers, nous nous sommes demandés s'il fallait créer une classe par instruction ou si il fallait toutes les mettre dans une seule et même classe. Puis nous avons eu des problèmes afin de choisir nos méthodes dans le but d'éviter de recopier le même code plusieurs fois, l'utilisation de méthodes virtuelles nous a aidé à résoudre ce problème! La prise en compte des flags fut également très difficile, c'est pourquoi nous avons préféré les mettre de côté, cependant nous avons essayé d'arranger le programme pour qu'il fonctionne au mieux sans ceux-ci. III. Bilan 13/17
14 B. Améliorations possibles Notre programme est fonctionnel mais il lui manque quelques instructions importantes comme par exemple le MOVE que nous avons essayé d'implémenter mais son exécution ne fonctionne malheureusement pas! Une meilleure prise en charge des FLAGS et du registre d'état serait également nécessaires à l'amélioration de notre programme puisque sans ceux-ci le processeur ne peut pas fonctionner correctement. Enfin, si nous prenons le sujet de départ, il manque encore beaucoup de chose afin de créer un véritable «jeu»; nous avons créé un modèle de joueur mais toutes les règles et stratégies ainsi que le plateau ne sont pas réalisées! III. Bilan 14/17
15 C. Bilan personnel Grâce à ce projet nous avons pu acquérir de solides bases en langage C++; d'un point de vue structuration des fichiers mais également d'un point de vue objet puisque la différence majeure entre le langage C que nous connaissions déjà et le C++ et le côté objet. Nous avons eu beaucoup de mal à trouver un point de départ pour notre projet, mais une fois celui-ci trouver nous avons pu progresser avec plaisir et comprendre au fur et à mesure le fonctionnement d'un microprocesseur. Ce projet nous a donc permis de comprendre avec précision comment fonctionne un microprocesseur, connaissances non négligeables quand on est développeur. Nous regrettons cependant le manque de temps puisque nous aurions voulu mettre en place la stratégie de jeu afin de réaliser un vrai CodeWar. III. Bilan 15/17
16 Conclusion L'élaboration de ce projet nous a permis de mettre en pratique nos connaissances et compétences en développement mais également d'apprendre à organiser notre travail pour rendre efficace le travail en groupe. L'objectif de départ n'est pas atteint mais notre travail est un bon début en vue de la réalisation d'un vrai jeu. 16/17
17 Glossaire Emulateur: Dans les domaines de l'informatique et de l'électronique, le terme émulation est employé au sens de simulation et d'imitation (acception du mot influencé par les termes anglais emulation et emulator). Plus précisément ce terme décrit un principe général consistant à remplacer un système par un autre sans changement du fonctionnement d'un point de vue externe. On peut aussi utiliser le terme de simulation. Le recours à un émulateur selon le contexte permet de faciliter le développement ou le déboguage d'un système ou de remplacer un système obsolète ou inutilisable par un autre. Dans ce cadre, il est possible de faire fonctionner le nouveau système, l'émulateur, de la même manière que le système simulé. Motorola : Apparu en 1979, le Motorola est un microprocesseur CISC 16/32 bits développé par Motorola. C'est le premier de la famille de microprocesseurs souvent appelée m68k ou 680x0, qui comprend notamment les microprocesseurs Motorola 68010, Motorola 68020, Motorola 68030, Motorola et Motorola Le nom du vient à la fois de la continuité avec la famille de microprocesseurs Motorola 6800 et du nombre de transistors qu'il contient, un peu plus de Glossaire 17/17
Département informatique de l université d Angers
Département informatique de l université d Angers Amélioration d'un logiciel d'émulation du fonctionnement d'un microprocesseur x8 6 SCHAEFFER Florian ROUSSEAUX Billy L3 Informatique Responsable du projet:
Plus en détailIntroduction à l Informatique licence 1 ère année Notes de Cours
Introduction à l Informatique licence 1 ère année Notes de Cours Philippe Le Parc Mail : leparc@univ-brest.fr Bureau : LC101 Tel : (029801) 6960 Fiche UE (part.1) 2 Plan et planning Début des cours magistraux
Plus en détailSeance 2: En respectant la méthode de programmation par contrat, implémentez les autres fonctions de jeu.
Seance 2: Complétion du code de jeu. (durée max: 2h) Mot clé const et pointeurs: En respectant la méthode de programmation par contrat, implémentez les autres fonctions de jeu. Implémentez jeu_recupere_piece
Plus en détailChapitre 1 I:\ Soyez courageux!
Chapitre 1 I:\ Soyez courageux! Pour ne rien vous cacher, le langage d'assembleur (souvent désigné sous le terme "Assembleur", bien que ce soit un abus de langage, puisque "Assembleur" désigne le logiciel
Plus en détailDossier. Développer en Java sur téléphone mobile. Benjamin Damécourt benjamin.damecourt@me.com. UFR SITEC Master 2 EESC 11 janvier 2012
Dossier Développer en Java sur téléphone mobile Benjamin Damécourt benjamin.damecourt@me.com UFR SITEC Master 2 EESC 11 janvier 2012 Table des matières Introduction 2 Pré-requis 3 Hello World! 5 Installation
Plus en détailMachines virtuelles Cours 1 : Introduction
Machines virtuelles Cours 1 : Introduction Pierre Letouzey 1 pierre.letouzey@inria.fr PPS - Université Denis Diderot Paris 7 janvier 2012 1. Merci à Y. Régis-Gianas pour les transparents Qu est-ce qu une
Plus en détailArchitecture des Ordinateurs. Partie II:
Architecture des Ordinateurs Partie II: Le port Floppy permet le raccordement du lecteur de disquette àla carte mère. Remarque: Le lecteur de disquette a disparu il y a plus de 6 ans, son port suivra.
Plus en détailTélécom Nancy Année 2013-2014
Télécom Nancy Année 2013-2014 Rapport 1A Ajout du langage C dans la Programmer's Learning Machine GIANNINI Valentin Loria 615, rue du Jardin Botanique 54600, Villers-Lès-Nancy Maître de stage : QUINSON
Plus en détailModules du DUT Informatique proposés pour des DCCE en 2014/2015
Modules du DUT Informatique proposés pour des DCCE en 2014/2015 Résumé de l offre : Parmi les 5500 heures d enseignement informatique dispensées au département informatique de l IUT (avec 2880 heures de
Plus en détailIV- Comment fonctionne un ordinateur?
1 IV- Comment fonctionne un ordinateur? L ordinateur est une alliance du hardware (le matériel) et du software (les logiciels). Jusqu à présent, nous avons surtout vu l aspect «matériel», avec les interactions
Plus en détailArchitecture des ordinateurs
Architecture des ordinateurs Cours 4 5 novembre 2012 Archi 1/22 Micro-architecture Archi 2/22 Intro Comment assembler les différents circuits vus dans les cours précédents pour fabriquer un processeur?
Plus en détailConception de circuits numériques et architecture des ordinateurs
Conception de circuits numériques et architecture des ordinateurs Frédéric Pétrot Année universitaire 2014-2015 Structure du cours C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 Codage des nombres en base 2, logique
Plus en détailExécution des instructions machine
Exécution des instructions machine Eduardo Sanchez EPFL Exemple: le processeur MIPS add a, b, c a = b + c type d'opération (mnémonique) destination du résultat lw a, addr opérandes sources a = mem[addr]
Plus en détailProgrammation C. Apprendre à développer des programmes simples dans le langage C
Programmation C Apprendre à développer des programmes simples dans le langage C Notes de cours sont disponibles sur http://astro.u-strasbg.fr/scyon/stusm (attention les majuscules sont importantes) Modalités
Plus en détailEPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE
EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE QCM Remarque : - A une question correspond au moins 1 réponse juste - Cocher la ou les bonnes réponses Barème : - Une bonne réponse = +1 - Pas de réponse = 0
Plus en détailCours 1 : La compilation
/38 Interprétation des programmes Cours 1 : La compilation Yann Régis-Gianas yrg@pps.univ-paris-diderot.fr PPS - Université Denis Diderot Paris 7 2/38 Qu est-ce que la compilation? Vous avez tous déjà
Plus en détailCLAIRE, UN OUTIL DE SIMULATION ET DE TEST DE LOGICIELS CRITIQUES. Jean GASSINO, Jean-Yves HENRY. Rapport IPSN/Département d'évaluation de sûreté N 280
FR9704668 PC CLAIRE, UN OUTIL DE SIMULATION ET DE TEST DE LOGICIELS CRITIQUES Jean GASSINO, Jean-Yves HENRY eci Rapport IPSN/Département d'évaluation de sûreté N 280 Octobre 1996 INSTITUT DE PROTECTION
Plus en détailPFE Télécommunications. Pré-rapport à l'issue des 6 premières semaines de stage. Page 1 sur 5 1 %
PFE Télécommunications Pré-rapport à l'issue des 6 premières semaines de stage!"!"#$%&' ()*()!")+")# (#),()-,)*)"-./0 1 ()*()!")+-)# % 23 &0 )14) 56 7$8797%77:7' '72 Page 1 sur 5 Contexte Les centres de
Plus en détailIRL : Simulation distribuée pour les systèmes embarqués
IRL : Simulation distribuée pour les systèmes embarqués Yassine El Khadiri, 2 ème année Ensimag, Grenoble INP Matthieu Moy, Verimag Denis Becker, Verimag 19 mai 2015 1 Table des matières 1 MPI et la sérialisation
Plus en détailInstallation et prise en main
TP1 Installation et prise en main Android est le système d'exploitation pour smartphones, tablettes et autres appareils développé par Google. Pour permettre aux utilisateurs d'installer des applications
Plus en détailUE Programmation Impérative Licence 2ème Année 2014 2015
UE Programmation Impérative Licence 2 ème Année 2014 2015 Informations pratiques Équipe Pédagogique Florence Cloppet Neilze Dorta Nicolas Loménie prenom.nom@mi.parisdescartes.fr 2 Programmation Impérative
Plus en détailProgrammation assembleur : aperçu
Assembleur : Younès EL AMRANI. 1 Programmation assembleur : aperçu Programmation en assembleur : NASM Module M14 Semestre 4 Printemps 2010 Equipe pédagogique : Younès El Amrani, Abdelhakim El Imrani, Faissal
Plus en détailRappels d architecture
Assembleur Rappels d architecture Un ordinateur se compose principalement d un processeur, de mémoire. On y attache ensuite des périphériques, mais ils sont optionnels. données : disque dur, etc entrée
Plus en détailFICHE UE Licence/Master Sciences, Technologies, Santé Mention Informatique
NOM DE L'UE : Algorithmique et programmation C++ LICENCE INFORMATIQUE Non Alt Alt S1 S2 S3 S4 S5 S6 Parcours : IL (Ingénierie Logicielle) SRI (Systèmes et Réseaux Informatiques) MASTER INFORMATIQUE Non
Plus en détailTravaux pratiques. Compression en codage de Huffman. 1.3. Organisation d un projet de programmation
Université de Savoie Module ETRS711 Travaux pratiques Compression en codage de Huffman 1. Organisation du projet 1.1. Objectifs Le but de ce projet est d'écrire un programme permettant de compresser des
Plus en détailINITIATION AU LANGAGE C SUR PIC DE MICROSHIP
COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance du C dans les laboratoires BELL par
Plus en détailUEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.
UEO11 COURS/TD 1 Contenu du semestre Cours et TDs sont intégrés L objectif de ce cours équivalent a 6h de cours, 10h de TD et 8h de TP est le suivant : - initiation à l algorithmique - notions de bases
Plus en détailMéthode de Test. Pour WIKIROUTE. Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel.
Méthode de Test Pour WIKIROUTE Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel. [Tapez le nom de l'auteur] 10/06/2009 Sommaire I. Introduction...
Plus en détail2 Grad Info Soir Langage C++ Juin 2007. Projet BANQUE
2 Grad Info Soir Langage C++ Juin 2007 Projet BANQUE 1. Explications L'examen comprend un projet à réaliser à domicile et à documenter : - structure des données, - objets utilisés, - relations de dépendance
Plus en détailCompilation (INF 564)
Présentation du cours Le processeur MIPS Programmation du MIPS 1 Compilation (INF 564) Introduction & architecture MIPS François Pottier 10 décembre 2014 Présentation du cours Le processeur MIPS Programmation
Plus en détailPC Check & Tuning 2010 Optimisez et accélérez rapidement et simplement les performances de votre PC!
PC Check & Tuning 2010 Optimisez et accélérez rapidement et simplement les performances de votre PC! MAGIX PC Check & Tuning 2010 est la solution logicielle complète pour l'analyse, la maintenance et l'accélération
Plus en détailConcept de machine virtuelle
Concept de machine virtuelle Chap. 5: Machine virtuelle Alain Sandoz Semestre été 2007 1 Introduction: Java Virtual Machine Machine Virtuelle Java: qu est-ce que c est? c est la spécification d une machine
Plus en détailLes modules SI5 et PPE2
Les modules SI5 et PPE2 Description de la ressource Propriétés Intitulé long Formation concernée Matière Présentation Les modules SI5 et PPE2 BTS SIO SI5 PPE2 Description Ce document présente une approche
Plus en détailSystèmes et traitement parallèles
Systèmes et traitement parallèles Mohsine Eleuldj Département Génie Informatique, EMI eleuldj@emi.ac.ma 1 Système et traitement parallèle Objectif Etude des architectures parallèles Programmation des applications
Plus en détailHadoop / Big Data. Benjamin Renaut <renaut.benjamin@tokidev.fr> MBDS 2014-2015
Hadoop / Big Data Benjamin Renaut MBDS 2014-2015 TP 1 Méthodologie Map/Reduce - programmation Hadoop. 1 Installer VirtualBox (https://www.virtualbox.org/). Importer la machine
Plus en détailDossier projet isn 2015 par Victor Gregoire
Dossier projet isn 2015 par Victor Gregoire Plan: I) But du projet: créer un jeu de blackjack fonctionnel et le poster sur une page web mise en ligne. Le jeu sera developpé en C++ a l'aide de code blocks.
Plus en détailUNIVERSITÉ DE LORRAINE Master MIAGE (Méthodes Informatiques Appliquées à la Gestion des Entreprises)
UNIVERSITÉ DE LORRAINE Master MIAGE (Méthodes s Appliquées à la Gestion des Entreprises) 1 Description générale L UFR Mathématiques et propose le Master avec trois spécialisations en deuxième année : ACSI
Plus en détailProjet Active Object
Projet Active Object TAO Livrable de conception et validation Romain GAIDIER Enseignant : M. Noël PLOUZEAU, ISTIC / IRISA Pierre-François LEFRANC Master 2 Informatique parcours MIAGE Méthodes Informatiques
Plus en détailGCOS 7 sur microprocesseur standard Diane Daniel POIRSON 14 octobre 2004 Matériels 64 / DPS 7 / DPS 7000 Architecture & Evolution - Daniel POIRSON 1
sur microprocesseur standard Diane Daniel POIRSON 14 octobre 2004 Matériels 64 / DPS 7 / DPS 7000 Architecture & Evolution - Daniel POIRSON 1 Pourquoi aller vers les processeurs standard? Considérations
Plus en détailUE 8 Systèmes d information de gestion Le programme
UE 8 Systèmes d information de gestion Le programme Légende : Modifications de l arrêté du 8 mars 2010 Suppressions de l arrêté du 8 mars 2010 Partie inchangée par rapport au programme antérieur Indications
Plus en détailASR1 TD7 : Un microprocesseur RISC 16 bits
{Â Ö Ñ º ØÖ Ý,È ØÖ ºÄÓ Ù,Æ ÓÐ ºÎ ÝÖ Ø¹ ÖÚ ÐÐÓÒ} Ò ¹ÐÝÓÒº Ö ØØÔ»»Ô Ö Óº Ò ¹ÐÝÓÒº Ö» Ö Ñ º ØÖ Ý»¼ Ö½» ASR1 TD7 : Un microprocesseur RISC 16 bits 13, 20 et 27 novembre 2006 Présentation générale On choisit
Plus en détailDUT. Informatique, orientation Imagerie Numérique. Domaine : Sciences, Technologies, Santé. Mention : Informatique
DUT Informatique, orientation Imagerie Numérique Domaine : Sciences, Technologies, Santé Mention : Informatique Organisation : Institut Universitaire de Technologie Lieu de formation : Le Puy en Velay
Plus en détailCINEMATIQUE DE FICHIERS
ANDRE ANTHONY BRUNEAU Vincent JOUANNIN ROMAIN MAZEAUD MARINE RIOCHET Tony Groupe 609 CINEMATIQUE DE FICHIERS Mini-projet: Gestion de Ventes d'articles Enseignant: MONCEAUX Laura Année 2011 / 2012 TABLE
Plus en détailLes avantages de la virtualisation sont multiples. On peut citer:
1 Les mécanismes de virtualisation ont été introduits il y a fort longtemps dans les années 60 par IBM avec leur système CP/CMS. La motivation première de la virtualisation est la possibilité d'isoler
Plus en détailArchivage Messagerie Evolution pour usage HTML en utilisant Hypermail
Finalités Archivage Messagerie Evolution pour usage HTML en utilisant Hypermail Réalisé par sa modestie Arnaud de VILLEDON de NAIDE, le 9 mars 2013 Document sous licence GPL. Vous avez le droit d'en faire
Plus en détailRapport de Stage Christopher Chedeau 2 au 26 Juin 2009
Rapport de Stage Christopher Chedeau 2 au 26 Juin 2009 «Web. De l intégration de pages statiques HTML à un CMS, à la dynamisation d un site grâce au Javascript et l utilisation de nouvelles technologies
Plus en détailJade. Projet Intelligence Artificielle «Devine à quoi je pense»
Jade Projet Intelligence Artificielle «Devine à quoi je pense» Réalisé par Djénéba Djikiné, Alexandre Bernard et Julien Lafont EPSI CSII2-2011 TABLE DES MATIÈRES 1. Analyse du besoin a. Cahier des charges
Plus en détailChapitre I : le langage UML et le processus unifié
I. Introduction Les méthodes d analyse orientées objet sont initialement issues des milieux industriels. La préoccupation dominante de leurs auteurs est le génie logiciel, c est-àdire les principes et
Plus en détailLa mémoire. Un ordinateur. L'octet. Le bit
Introduction à l informatique et à la programmation Un ordinateur Un ordinateur est une machine à calculer composée de : un processeur (ou unité centrale) qui effectue les calculs une mémoire qui conserve
Plus en détailHISTORIQUE DES SYSTEMES D'EXPLOITATION (S.E.)
SYSTEME Chapitre 1 HISTORIQUE DES SYSTEMES D'EXPLOITATION (S.E.) Ce qu'est un S.E. = partie intelligente d'un système donné. Les S.E. ont évolué au fil des années. Ils dépendent de l'architecture des ordinateurs
Plus en détailQUESTION 1 {2 points}
ELE4301 Systèmes logiques II Page 1 de 8 QUESTION 1 {2 points} En se servant de paramètres électriques donnés dans le Tableau 1 ci-dessous, on désire déterminer la fréquence d opération du compteur présenté
Plus en détailCloud Computing : forces et faiblesses
Chapitre 7 Cloud Computing : forces et faiblesses 1. Présentation Cloud Computing : forces et faiblesses Le monde informatique a connu une véritable révolution ces dernières années avec l'apparition d'un
Plus en détailProgrammation Objet - Cours II
Programmation Objet - Cours II - Exercices - Page 1 Programmation Objet - Cours II Exercices Auteur : E.Thirion - Dernière mise à jour : 05/07/2015 Les exercices suivants sont en majorité des projets à
Plus en détailEnseignant: Lamouchi Bassem Cours : Système à large échelle et Cloud Computing
Enseignant: Lamouchi Bassem Cours : Système à large échelle et Cloud Computing Chapitre 1 : Introduction Introduction générale Origine du cloud Concepts prédécésseurs «liés aux serveurs» Concepts prédécesseurs
Plus en détailMicroprocesseur + Logiciel
Microprocesseur + Logiciel Robot EVALBOT MOHAMED AKIL BUREAU 5253 UNITE IGI 1001 PROGRAMMATION DES MICROPROCESSEURS Présentation [IGI1001] CONTEXTE SCIENTIFIQUE... 4 1. OBJECTIFS DE L UNITE... 6 2. OBJECTIFS
Plus en détail402 réponses au sondage sur 850 étudiants en PACES. Environ 47% des étudiants de PACES ont répondu au sondage proposé par le Tutorat J
402 réponses au sondage sur 850 étudiants en PACES. Environ 47% des étudiants de PACES ont répondu au sondage proposé par le Tutorat J Le Tutorat du premier semestre a obtenue la note moyenne de 7,97/10
Plus en détailUne version javascript sera disponible directement dans le cours prochainement.
Author : Cédric Vanconingsloo Ce cours est principalement axé sur la compréhension du fonctionnement d'un ordinateur et l'étude du seul langage qu'il connaisse, le binaire. De ce fait, le cours est relativement
Plus en détailDÉVELOPPEMENT INFONUAGIQUE - meilleures pratiques
livre blanc DÉVELOPPEMENT INFONUAGIQUE MEILLEURES PRATIQUES ET APPLICATIONS DE SOUTIEN DÉVELOPPEMENT INFONUAGIQUE - MEILLEURES PRATIQUES 1 Les solutions infonuagiques sont de plus en plus présentes sur
Plus en détailSauvegarder Bcdi (réseau Novell / Gespere)
Sauvegarder Bcdi (réseau Novell / Gespere) Remarque importante : dans l'académie, l'installation du logiciel Bcdi est faite sous Novell avec l'interface Gespere dont la dernière version en fin d'année
Plus en détailVers l'ordinateur quantique
Cours A&G Vers l'ordinateur quantique Données innies On a vu dans les chapîtres précédents qu'un automate permet de représenter de manière nie (et même compacte) une innité de données. En eet, un automate
Plus en détailGPA770 Microélectronique appliquée Exercices série A
GPA770 Microélectronique appliquée Exercices série A 1. Effectuez les calculs suivants sur des nombres binaires en complément à avec une représentation de 8 bits. Est-ce qu il y a débordement en complément
Plus en détailmodélisation solide et dessin technique
CHAPITRE 1 modélisation solide et dessin technique Les sciences graphiques regroupent un ensemble de techniques graphiques utilisées quotidiennement par les ingénieurs pour exprimer des idées, concevoir
Plus en détailInformatique Générale
Informatique Générale Guillaume Hutzler Laboratoire IBISC (Informatique Biologie Intégrative et Systèmes Complexes) guillaume.hutzler@ibisc.univ-evry.fr Cours Dokeos 625 http://www.ens.univ-evry.fr/modx/dokeos.html
Plus en détailREALISATION d'un. ORDONNANCEUR à ECHEANCES
REALISATION d'un ORDONNANCEUR à ECHEANCES I- PRÉSENTATION... 3 II. DESCRIPTION DU NOYAU ORIGINEL... 4 II.1- ARCHITECTURE... 4 II.2 - SERVICES... 4 III. IMPLÉMENTATION DE L'ORDONNANCEUR À ÉCHÉANCES... 6
Plus en détailSimplifiez-vous la vie et accroissez vos revenus choisissez la simplicité
Fiche technique Simplifiez-vous la vie et accroissez vos revenus choisissez la simplicité MAX Backup - rapides, fiables, automatiques, sécurisés et hors site, ces services de sauvegarde et de reprise d'activité
Plus en détailQuelques éléments de compilation en C et makefiles
Quelques éléments de compilation en C et makefiles Guillaume Feuillade 1 Compiler un programme C Le principe de la compilation consiste à passer d un ensemble de fichiers de code à un programme exécutable
Plus en détailEIP 2012 Projet Livepad. Documentation technique 1.5
EIP 2012 Projet Livepad 1.5 Marc Mathieu Benjamin Netter David Ngo Pierre Pasteau Denis Togbe 12-01-2012 Informations sur le projet Groupe Nom du projet Type de document Marc Mathieu Benjamin Netter David
Plus en détailL AUTOMATISME LE SIGNAL
L AUTOMATISME LE SIGNAL Page 1 sur 7 Sommaire : 1- Champ de l automatisme définitions 2- Correspondance entre phénomènes physiques et signaux a. Capteur b. Exemple de capteur TOR c. Exemple de capteur
Plus en détailMaster CCI. Compétences Complémentaires en Informatique. Livret de l étudiant
Master CCI Compétences Complémentaires en Informatique Livret de l étudiant 2014 2015 Master CCI Le Master CCI (Compétences Complémentaires en Informatique) permet à des étudiants de niveau M1 ou M2 dans
Plus en détailAnaplan facilite la planification stratégique des effectifs dans une société de cloud computing en pleine expansion. Introduction. Cas d'usage.
Cas d'usage Planification des effectifs Défi Dépendance àvis à vis de l'informatique pour la fédération de données de toute l'organisation Les demandes d'évolution prennent trop de temps. La gestion de
Plus en détailELP 304 : Électronique Numérique. Cours 1 Introduction
ELP 304 : Électronique Numérique Cours 1 Introduction Catherine Douillard Dépt Électronique Les systèmes numériques : généralités (I) En électronique numérique, le codage des informations utilise deux
Plus en détailDU BINAIRE AU MICROPROCESSEUR - D ANGELIS CIRCUITS CONFIGURABLES NOTION DE PROGRAMMATION
145 NOTION DE PROGRAMMATION 1/ Complétons notre microprocesseur Nous avons, dans les leçons précédentes décrit un microprocesseur théorique, cependant il s inspire du 6800, premier microprocesseur conçu
Plus en détailPrésentation du cours
Thibault HILAIRE thibault.hilaire@lip6.fr François PECHEUX francois.pecheux@lip6.fr Informatique générale 1 (Python) Introduction Présentation du cours AGRAL-MTX-GM 2014-2015 20h de cours, 40h de TP/projets
Plus en détailI1401 - Maintenance informatique et bureautique
Appellations (Métiers courants) Chef d'équipe de help desk en informatique Support aux utilisateurs en informatique Technicien / Technicienne de maintenance en bureautique Technicien / Technicienne de
Plus en détailGOL-502 Industrie de services. Travaux Pratique / Devoir #7
GOL-502 Industrie de services Travaux Pratique / Devoir #7 Version 2012 Modélisation à l'aide du langage UML 1) Diagramme de cas d'utilisation 2) Diagramme de classes 3) Diagramme de séquence 4) Diagramme
Plus en détailTélé-Procédure de Gestion d Incidents : Spécifications et Prototype.
Télé-Procédure de Gestion d Incidents : Spécifications et Prototype. By Sébastien Pinel Performed at Laboratory LIG Equipe IIHM Université Joseph Fourrier Grenoble In partial fulfillment of the requirements
Plus en détailLICENCE : INFORMATIQUE GENERALE
LICENCE : INFORMATIQUE GENERALE RÉSUMÉ DE LA FORMATION Type de diplôme : Licence (LMD) Domaine : Sciences, Ingénierie et Technologies Mention : Informatique générale Objectifs Le diplôme offre une formation
Plus en détailRef : Résolution problème d'accès aux supports de cours
PLATE FORME e-learning LLMS Pôle national de compétences FOAD (Formation Ouverte et A Distance) Ref : Résolution problème d'accès Pôle compétences FOAD SIGAT http://foad.ac-toulouse.fr/ Page 2 SOMMAIRE
Plus en détailAuteur LARDOUX Guillaume Contact guillaume.lardoux@epitech.eu Année 2014 DEVELOPPEMENT MOBILE AVEC CORDOVA
Auteur LARDOUX Guillaume Contact guillaume.lardoux@epitech.eu Année 2014 DEVELOPPEMENT MOBILE AVEC CORDOVA Sommaire 1. Introduction 2. Installation 3. Fonctionnement 4. Développement 5. Démonstration 2
Plus en détail2. Technique d analyse de la demande
1. Recevoir et analyser une requête du client 2. Sommaire 1.... Introduction 2.... Technique d analyse de la demande 2.1.... Classification 2.2.... Test 2.3.... Transmission 2.4.... Rapport 1. Introduction
Plus en détailQu'est-ce que le BPM?
Qu'est-ce que le BPM? Le BPM (Business Process Management) n'est pas seulement une technologie mais, dans les grandes lignes, une discipline de gestion d'entreprise qui s'occupe des procédures contribuant
Plus en détailAnnexe : La Programmation Informatique
GLOSSAIRE Table des matières La Programmation...2 Les langages de programmation...2 Java...2 La programmation orientée objet...2 Classe et Objet...3 API et Bibliothèque Logicielle...3 Environnement de
Plus en détailChapitre 2 : Abstraction et Virtualisation
Virtualisation et Cloud Computing Chapitre 2 : Abstraction et Virtualisation Objectifs Présenter la notion de niveaux d abstraction séparés par des interfaces bien définies Description des avantages et
Plus en détailSystemes d'exploitation des ordinateurs
! " #$ % $ &' ( $ plan_ch6_m1 Systemes d'exploitation des ordinateurs Conception de Systèmes de Gestion de la Mémoire Centrale Objectifs 1. Conception de systèmes paginés 2. Conception des systèmes segmentés
Plus en détailEncadré par : Michel SIMATIC
Réalisé Par : Nizar BEN AYADA Ahmed GHZAIEL Encadré par : Michel SIMATIC I. PRESENTATION DU PROJET II. PRESENTATION DU MIDDLEWARE GASP 1- PRESENTATION GENERALE : 2- NECESSITE DES INTERGICIELS DANS LE MONDE
Plus en détailWindows 8 Installation et configuration
Editions ENI Windows 8 Installation et configuration Collection Ressources Informatiques Extrait 112 Windows 8 Installation et configuration Pour terminer l'application de l'image, nous devons configurer
Plus en détailTP Git. Author : Cedric Dumoulin Date : 2 déc. 2014 Rev : 9 Dec. 2014
Objectifs TP Git Author : Cedric Dumoulin Date : 2 déc. 2014 Rev : 9 Dec. 2014 L'objectif de cet atelier est d'apprendre à utiliser GIT pour versionner ses projet et pour travailler à plusieurs. Vous allez
Plus en détailManuel d installation De la Cryptolib CPS Dans un environnement client/serveur TSE/CITRIX
Manuel d installation De la Cryptolib CPS Dans un environnement client/serveur TSE/CITRIX Sommaire 1 Contexte... 3 2 Configuration requise... 4 3 Description de l installation (version GALSS)... 5 3.1
Plus en détailLa biodiversité : oui! Mais pourquoi?
La biodiversité : oui! Mais pourquoi? On entend souvent parler de l importance de la biodiversité sans jamais savoir pourquoi elle est si importante que cela, est-ce que la sélection naturelle n est pas
Plus en détailLe partenaire tic de référence. Gestion des ressources humaines INOVA RH
Le partenaire tic de référence Gestion des ressources humaines INOVA RH Présentation Présentation INOVA RH Objectifs Présentation La réalisation d une application de gestion des ressources humaines rentre
Plus en détailInformatique. Les réponses doivent être données en cochant les cases sur la dernière feuille du sujet, intitulée feuille de réponse
Questions - Révision- - 1 er Semestre Informatique Durée de l examen : 1h pour 40 questions. Aucun document n est autorisé. L usage d appareils électroniques est interdit. Les questions faisant apparaître
Plus en détailPanorama général des normes et outils d audit. François VERGEZ AFAI
Panorama général des normes et outils d audit. François VERGEZ AFAI 3 Système d information, une tentative de définition (1/2) Un système d information peut être défini comme l ensemble des moyens matériels,
Plus en détailServices Réseau SSH. Michaël Hauspie. Michael.Hauspie@lifl.fr Licence Professionnelle Réseaux et Télécommunications
Services Réseau SSH Michaël Hauspie Michael.Hauspie@lifl.fr Licence Professionnelle Réseaux et Télécommunications On ne configure pas un serveur en travaillant physiquement dessus Salle serveur climatisée,
Plus en détailTraduction des Langages : Le Compilateur Micro Java
BARABZAN Jean-René OUAHAB Karim TUCITO David 2A IMA Traduction des Langages : Le Compilateur Micro Java µ Page 1 Introduction Le but de ce projet est d écrire en JAVA un compilateur Micro-Java générant
Plus en détailGénéralités sur le Langage Java et éléments syntaxiques.
Généralités sur le Langage Java et éléments syntaxiques. Généralités sur le Langage Java et éléments syntaxiques....1 Introduction...1 Genéralité sur le langage Java....1 Syntaxe de base du Langage...
Plus en détailModule : Virtualisation à l aide du rôle Hyper-V
Windows Server 2008 pour l'enseignement Module : Virtualisation à l aide du rôle Hyper-V Agenda du module Présentation d Hyper-V Installation d Hyper-V Configuration d Hyper-V Administration des machines
Plus en détailMicrosoft infrastructure Systèmes et Réseaux
Microsoft infrastructure Systèmes et Réseaux FILIERE INTERNET INFORMATION SERVER 5 0 SOMMAIRE 2/2 SOMMAIRE INTERNET INFORMATION SERVER 5.0... 3 IMPLÉMENTATION ET SUPPORT TECHNIQUE DE MICROSOFT INTERNET
Plus en détailPortage et développement de jeux Java sur téléphones mobiles. Licence Professionnelle SIL 25 juin 2007
Portage et développement de jeux Java sur téléphones mobiles Table des matières I Présentation de l'entreprise II Présentation des projets effectués III Le portage d'un jeu sur téléphones mobiles IV Conclusion
Plus en détailI1401 - Maintenance informatique et bureautique
Appellations Agent / Agente de maintenance de machines de bureau Technicien / Technicienne de Service Après-Vente -SAV- en bureautique Agent / Agente de maintenance de matériels de reprographie Agent /
Plus en détail