Outils pour utilisateurs

Outils du site


ateliers:robotique:les_bases

les bases de l'informa'TIC.

Une petite définition

Les Technologies d'Information et de la communication (TIC) représente l'ensemble des moyens ou équipements (matériels et logiciels ou programmes), assurant le traitement automatique de l'information.

Booooon OK, dit comme ca, c'est barbant ! Mais nous avons trop souvent tendance à réduire l'informatique à notre ordinateur personnel, alors que ce domaine est nettement plus vaste.

Le terme traitement automatique de l'information désigne :

a: Le calcul (arithmétique c'est à dire à l'aide des opérateurs arithmétique : +,-, /,* et le calcul logique pour les propositions c'est à dire à l'aide des opérateurs logique : ET, OU, SI, NON…)
b: La gestion et l'enregistrement des données.
c: La communication et l'échange des données : la partie transmission et réception des informations.

Le terme équipement matériel et logiciel désigne la partie physique ou composantes électroniques, cette partie est commandé par une partie logiciel (ensemble de programmes ou instructions) qui sert à la gestion et à la commande de la partie matériel par exemple le système d'exploitation Windows 10 est un ensemble de programmes assurant la gestion ou la commande de la parie matériel de l'ordinateur.

Commençons par le commencement

Bit / Octet / ASCII

En informatique Un bit est l'unité élémentaire de mesure de l'information (comme par exemple le millimètre est l'unité élémentaire de mesure de la distance).
Un bit peut prendre l'une des valeurs suivante 1, 0

Le bit, c'est l'abréviation de binary digit, il est dit binaire, car composé uniquement de 0 ou 1 dans son système de numération.
En traitement ou en stockage de l'information, le bit est la plus petite unité d'information manipulable par un ordinateur, et peut être physiquement représenté par une impulsion unique sur un circuit, ou par une petite zone d'une surface de disque, capable de stocker un 0 ou un 1.
Considéré tout seul, un bit a peu de signification ; mais groupés par paquet de huit, les bits forment des octets qui peuvent représenter différentes informations, en particulier les lettres de l'alphabet et les chiffres 0 à 9.

L'octet, en informatique, c'est l'unité d’information composée de 8 bits (par exemple 11011011 est un octet).

En termes de traitement et de stockage, un octet correspond à un seul caractère, tel qu’une lettre, un chiffre ou un signe de ponctuation.
Un octet ne représentant qu’une petite quantité d’informations, la quantité de mémoire et la capacité de stockage sont généralement indiquées en kilo-octets :
(1 Ko = 210 octets = 1 024 octets)
ou en mégaoctets :
(1 Mo = 220 octets = 1 048 576 octets).

En informatique, le symbole du préfixe kilo- s’écrit avec une majuscule (K) et correspond à la valeur 1 024, alors que le k minuscule désigne la valeur 1 000 dans le système métrique.

Non ! L'ASCII* n'est pas l'ami de C3PO quoi que…
Le langage de l'ordinateur, ou langage machine, qui utilise le système binaire est difficilement utilisable par les non professionnels.
Dans ce langage, le programmeur doit entrer chaque commande et toutes les données sous forme binaire.
Ainsi, une opération de base telle que la comparaison du contenu d'un registre avec les données d'un emplacement de puce-mémoire pourrait ressembler à :

11001010 00010111 11110101 00101011.

L'ASCII utilise un octet pour les données à base de texte.
L'ASCII utilise des combinaisons de nombres 7 bits ou 8 bits désignés pour représenter 128 ou 256 caractères possibles.
L'ASCII Standard utilise 7 bits pour représenter toutes les lettres majuscules et minuscules, les chiffres 0 à 9, les signes de ponctuation et les caractères de contrôle spéciaux utilisés en anglais (États-Unis).

La plupart des ordinateurs actuels bâtis autour d'un processeur x86 prennent en charge l'utilisation des codes ASCII étendus (« supérieurs »).
Les codes ASCII étendus permettent d'utiliser le huitième bit de chaque caractère pour identifier 128 caractères (symbole) spéciaux supplémentaires, des lettres de langues étrangères ainsi que des symboles graphique

= *American Standard Code for Information Interchange (ASCII) =

La carte mère

C'est l'élément constitutif principal de l'ordinateur (en anglais « mainboard » ou « motherboard », parfois abrégé en « mobo »).
La carte mère est le socle permettant la connexion de l'ensemble des éléments essentiels de l'ordinateur.

Elle contient un certain nombre d'éléments embarqués, c'est-à-dire intégrés sur son circuit imprimé :

Le chipset, circuit qui contrôle la majorité des ressources (interface de bus du processeur, mémoire cache et mémoire vive, slots d'extension,…), L'horloge et la pile du CMOS, Le BIOS, Le bus système et les bus d'extension.

Le BIOS

Le BIOS (pour Basic Input/Output System) est le programme basique servant d'interface entre le système d'exploitation et la carte mère.
Il est stocké dans une ROM (mémoire morte, c'est-à-dire une mémoire en lecture seule), ainsi il utilise les données contenues dans le CMOS pour connaître la configuration matérielle du système.

Pour prendre une image, c'est un peu notre cerveau reptilien, primaire. C'est du BIOS que tout commence, sans lui, pas d'ordi !

Le processeur

Aaussi appelé microprocesseur, c'est LE cerveau de l'ordinateur. Il exécute les instructions des programmes grâce à un jeu d'instructions.
Le processeur (noté CPU, pour Central Processing Unit) est un circuit électronique cadencé au rythme d'une horloge interne, grâce à un cristal de quartz qui, soumis à un courant électrique, envoie des impulsions, appelées « top ».
La fréquence d'horloge (appelée également cycle, correspondant au nombre d'impulsions par seconde, s'exprime en Hertz (Hz).
Le processeur est caractérisé par sa fréquence, c'est-à-dire la cadence à laquelle il exécute les instructions.
Ainsi, un processeur cadencé à 800 MHz effectuera grossièrement 800 millions d'opérations par seconde.
A chaque top d'horloge le processeur exécute une action, correspondant à une instruction ou une partie d'instruction. L'indicateur appelé CPI (Cycles Par Instruction) permet de représenter le nombre moyen de cycles d’horloge nécessaire à l’exécution d’une instruction sur un microprocesseur

La puissance du processeur peut ainsi être caractérisée par le nombre d'instructions qu'il est capable de traiter par seconde. L'unité utilisée est le MIPS (Millions d'Instructions Par Seconde) correspondant à la fréquence du processeur que divise le CPI.

La carte mère possède un emplacement (parfois plusieurs dans le cas de cartes mères multi-processeurs) pour accueillir le processeur, appelé support de processeur. On distingue deux catégories de supports :

Slot (en français fente) : il s'agit d'un connecteur rectangulaire dans lequel on enfiche le processeur verticalement.
Socket (en français embase) : il s'agit d'un connecteur carré possédant un grand nombre de petits connecteurs sur lequel le processeur vient directement s'enficher.

Un peu de pratique avec çà ?

La théorie, le binaire c'est bien sympa, mais ça fait pas avancé la machine.
Sans plus attendre, mettons les mains dans le cambouis, enfin, sur la souris ! ;)

Comme nous sommes sur un wiki de robotique et d'informatique, nous allons aborder ce chapitre en utilisant l'IDE d'Arduino.
Nous pourrons aborder les différentes notions avec une mise en situation au sein de cette IDE, c'est plus facile à comprendre :) !

Avant tout, il faudra installer le logiciel, que tu trouveras ICI.
Une fois fait, tu devrais avoir ceci :

Super ! Te voila fin prêt.
En faisant ça, tu as déjà effectué pas mal de tâche :
Aller sur internet,
téléchargé un programme ( tu as donc fait attention à ton OS ),
repéré dans quel dossier le programme s'est téléchargé,
aller dans le bon dossier,
installé un programme,
exécuté le programme.

Le curseur

Dans la fenêtre du programme, en haut à gauche, tu trouveras une barre verticale qui clignote, c'est le curseur.
C'est lui qui indique l'endroit où le texte sera écrit. Si tu clic à un autre endroit dans la fenêtre, le curseur se placera à la ligne et si tu clic sur un mot, tu pourras intercaler des lettres.

Maintenant, comment faire pour écrire au dessus de “void setup” ?
Rien de plus simple, tu places ton curseur avant le “v” de void et ensuite tu appuies sur la touche “enter” de ton clavier.
Ni une ni deux, la ligne descend d'un cran et une ligne vide est alors disponible.

Copier / Coller

AH! Ce cher copier / coller, parfois on aimerait bien qu'il existe aussi dans la vrai vie :D
Il faut le dire, les développeurs sont TRES fainéants :D alors écrire toujours les mêmes choses, les mêmes noms de variables, les mêmes fonctions,etc… très peu pour nous.
Alors autant dire que les copier / coller, on les fait chauffés. Serial copieur / colleur pour ainsi dire ! ;)

Pour ce faire, deux solutions :

A: Soit tu as le temps devant toi, et dans ce cas, tu sélectionnes le mot ou la phrase que tu souhaites copier.
Ensuite, tu effectues un clic sur le bouton droit de ta souris et tu sélectionnes l'option “copier
Tu places ton curseur à l'endroit ou tu souhaites coller ton texte.
Tu refais un clic droit et tu sélectionne l'option “coller
Parfait, tu as copier ton texte.

B: Soit tu es un grand impatient, et dans ce cas, c'est nettement plus rapide.
Tu sélectionnes le mot ou la phrase que tu souhaites copier.
Avec ton petit doigts, tu restes appuyé sur la touche “CTRL” et avec ton index tu appuies une fois sur la touche “C”. Tu as fait un “copier” !
Tu places ton curseur à l'endroit ou tu souhaites coller ton texte.
A nouveau avec ton petit doigts, tu restes appuyé sur la touche “CTRL” et avec ton index tu appuies une fois sur la touche “V”. Tu as fait un “coller” !
Rapide non !

Les raccourcis sont donc :

CTRL + C → Copier
CTRL + V → Coller
Et pour couper :
CTRL + X → Couper

CTRL Z

Si le copier/coller est déjà magique, alors que dire du contrôle Z !

Imagine, tu as mis ton plus beau pull, merveilleux, tout juste sortit du magasin, quelle class !
Là, une envie fringante de manger une glace te chatouille les papilles.
Impossible de résister, te voilà entrain de croquer goulûment dans ta glace quand, soudain, bardaf ta boule fraise chocolat vient s'écrasée sur ton superbe pull blanc !
Rien à faire, c'est trop tard et tu n'as plus qu'une envie, revenir en arrière.

Et bien le CTRL Z c'est ça. si tu as fait un gaffe et que tu souhaites revenir en arrière, le CTRL Z est fait pour toi.
Teste le, et si tu as fait un copier / coller juste avant, tu verras qu'il disparaîtra !

CTRL A

Maintenant que tu as écrit ton code, il est beau, bien écrit et fonctionne à merveille.
Pour en faire profiter tes amis, tu souhaites leur envoyer, mais il est beaucoup trop long et tu as peur d'oublier des ligne, sans quoi, il ne fonctionnerait plus !
Pour être sur de ne pas en perdre une millet, Tu appuies sur CTRL A et hop! l'ensemble de ton code est sélectionné.
Il te resteras à effectuer un CTRL C puis CTRL V pour copier et coller ton code.

Le p'tit +

Si tu souhaites sélectionné rapidement un mot, rien de plus simple, effectue un double clic dessus.

Et si tu souhaites sélectionné l'ensemble d'une ligne, effectue trois clic sur l'un des mot qui compose la phrase.

Et étant donné qu'on cause quand même pas mal programmation ici, une petite dernière pour la route.
Quand tu écris le nom d'une variable ou d'une fonction, tu peux les nommés comme tu le souhaites.
Si le nom est Composé, tu as trois solutions :

1: Tu fais commencer chaque mot par une majuscule ( UnNomComposé ) rapide et facile à sélectionner, moins à lire (c'est la convention d'écriture en programmation.
2: Tu sépares chaque mot avec un “-” ( un-nom-composé ), mais essaies de le sélectionner avec un double clic, tu verras que seul l'un des trois mot du nom serras sélectionné.
3: Maintenant, sépares chaque mot par un “_” ( un_nom_composé ), et cette fois, c'est tout le nom qui serra sélectionné ! Claire, rapide, facile !

D'un point de vue purement personnel, je privilégie la séparation par des underscore “_” car, en Arduino par exemple, le ”-” crée une erreur et les majuscules sont un peu plus dur à lire quand on veut survoler rapidement un code.

Vidéos

ateliers/robotique/les_bases.txt · Dernière modification : 2022/06/22 15:13 de 127.0.0.1