Add course material on combinatorial logic with definitions, truth tables, and logical functions

This commit is contained in:
Edgar P. Burkhart 2025-03-06 10:16:45 +01:00
parent ce388b1126
commit 7ea0ad923c
Signed by: edpibu
GPG key ID: 9833D3C5A25BD227

70
cours/SIN/05-logique.md Normal file
View file

@ -0,0 +1,70 @@
---
title: Logique combinatoire
subject: Cours
export:
- format: pdf
template: courstex
kernelspec:
name: python3
display_name: Python 3
---
# Vocabulaire
:::{prf:definition} Variable logique
:nonumber: true
Une **variable logique** est une variable qui ne peut prendre que deux valeurs, dites **états logiques** : 0 et 1.
:::
:::{prf:definition} Table de vérité
:nonumber: true
Une **table de vérité** permet de renseigner les états logiques des sorties du système en fonction de ses entrées (exemple : @tab:verite).
:::
:::{csv-table} Table de vérité
:label: tab:verite
:header-rows: 1
a,b,S
0,0,1
0,1,0
1,0,0
1,1,1
:::
:::{prf:definition} Chronogramme
:nonumber: true
Un **chronogramme** permet de représenter l'évolution des états logiques d'un système en fonction du temps (exemple : @fig:chronogramme).
:::
::::{figure}
:label: fig:chronogramme
:::{code-cell} python
:tag: [remove-input]
import matplotlib.pyplot as plt
import numpy as np
rng = np.random.default_rng(25)
fig, [ax_a, ax_b, ax] = plt.subplots(3, figsize=(10, 4), sharex=True, sharey=True)
ax.set(xlim=(0, 16), xticks=np.arange(0, 16), ylim=(-0.5, 1.5), yticks=(0, 1))
ax.set(xlabel="Temps (s)", ylabel="Signal logique")
a = rng.integers(2, size=16)
b = rng.integers(2, size=16)
S = np.equal(a, b)
ax_a.stairs(a, lw=3, baseline=None)
ax_a.set_ylabel("a")
ax_b.stairs(b, lw=3, baseline=None)
ax_b.set_ylabel("b")
ax.stairs(S, lw=3, baseline=None)
ax.set_ylabel("S");
:::
Chronogramme
::::
# Fonctions logiques
Une fonction logique donne un résultat en fonction des valeurs d'entrée.
Les fonctions logiques usuelles sont ET ($a\cdot{}b$), OU ($a+b$), NON ($\bar a$) et OU exclusif (XOR, $a\oplus{}b$). Les symboles et tables de vérité sont donnés sur la [page Wikipédia des fonctions logiques](https://fr.wikipedia.org/wiki/Fonction_logique#Repr%C3%A9sentation_graphique).