tanszek:oktatas:szamitastechnika:binaris_muveletek
Differences
This shows you the differences between two versions of the page.
| Next revision | Previous revision | ||
| tanszek:oktatas:szamitastechnika:binaris_muveletek [2024/10/01 18:04] – created knehez | tanszek:oktatas:szamitastechnika:binaris_muveletek [2025/09/16 19:27] (current) – [Gyakorlati példa: Bitek beállítása és törlése] knehez | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ===== Bináris műveletek gyakorlati alkalmazása: | + | ===== Bináris műveletek gyakorlati alkalmazása: |
| - | A bináris logikai műveletek (**AND**, **OR**, **XOR**, **NAND**) fontos szerepet játszanak a bitek kezelésében, | + | A bináris logikai műveletek (**AND**, **OR**, **XOR**) fontos szerepet játszanak a bitek kezelésében, |
| - | ==== 1. AND művelet ==== | + | ==== 1. AND (és) művelet ==== |
| - | Az **AND** művelet csak akkor ad 1-es eredményt, ha mindkét bemenet 1. A bitek " | + | Az **AND** művelet csak akkor ad 1-es eredményt, ha mindkét bemenet 1. A bitek " |
| - | * Példa: Adott egy 8 bites számunk: `10101101`. Ha csak az alsó négy bitet akarjuk megtartani, akkor használjuk az AND műveletet: | + | |
| - | - `10101101 & 00001111 = 00001101`. | + | |
| - | + | ||
| - | Ez hasznos, ha egy adott bitcsoportot akarunk " | + | |
| **Igazságtábla: | **Igazságtábla: | ||
| Line 18: | Line 14: | ||
| | 1 | 1 | 1 | | | 1 | 1 | 1 | | ||
| - | ==== 2. OR művelet ==== | + | **Példa**: Adott egy 8 bites számunk: '' |
| - | Az **OR** művelet akkor ad 1-es eredményt, ha legalább az egyik bemenet 1. Ezt a bitek " | + | < |
| - | * Példa: Ha egy bitek közül egyet be akarunk állítani, használjuk az OR-t: | + | 10101101 |
| - | - `10101101 | 00001000 = 10101101`. | + | & 00001111 |
| + | -------- | ||
| + | 00001101 | ||
| + | </ | ||
| - | Ez hasznos, ha egy konkrét bitet szeretnénk | + | Ez hasznos, ha egy adott bitcsoportot akarunk // |
| + | |||
| + | |||
| + | |||
| + | ==== 2. OR (vagy) művelet ==== | ||
| + | Az **OR** művelet akkor ad 1-es eredményt, ha legalább az egyik bemenet 1. Ezt a bitek " | ||
| **Igazságtábla: | **Igazságtábla: | ||
| Line 32: | Line 36: | ||
| | 1 | 0 | 1 | | | 1 | 0 | 1 | | ||
| | 1 | 1 | 1 | | | 1 | 1 | 1 | | ||
| + | |||
| + | **Példa**: Ha egy bitek közül egyet be akarunk állítani (pl. jobbról a negyediket), | ||
| + | |||
| + | < | ||
| + | 10101101 | ||
| + | | 00001000 | ||
| + | ---------- | ||
| + | 10101101 | ||
| + | </ | ||
| + | |||
| + | Ez hasznos, ha egy konkrét bitet szeretnénk 1-re állítani anélkül, hogy a többi bitet megváltoztatnánk. | ||
| + | |||
| + | |||
| ==== 3. XOR művelet ==== | ==== 3. XOR művelet ==== | ||
| Az **XOR** (kizáró vagy) művelet akkor ad 1-et, ha a bemenetek eltérnek. Ezzel biteket kapcsolgathatunk, | Az **XOR** (kizáró vagy) művelet akkor ad 1-et, ha a bemenetek eltérnek. Ezzel biteket kapcsolgathatunk, | ||
| - | * Példa: Ha az alsó 4 bit értékét akarjuk megváltoztatni: | ||
| - | - `10101101 ^ 00001111 = 10100010`. | ||
| - | |||
| - | Ez a művelet különösen hasznos, ha egy adott bitet meg akarunk " | ||
| **Igazságtábla: | **Igazságtábla: | ||
| Line 48: | Line 61: | ||
| | 1 | 1 | 0 | | | 1 | 1 | 0 | | ||
| + | **Példa**: Ha az alsó 4 bit értékét akarjuk megfordítani: | ||
| + | < | ||
| + | 10101101 | ||
| + | ^ 00001111 | ||
| + | ---------- | ||
| + | 10100010 | ||
| + | </ | ||
| + | |||
| + | ==== Gyakorlati példa: Bitek beállítása és törlése ==== | ||
| + | Tegyük fel, hogy van egy 8 bites regiszterünk: | ||
| + | |||
| + | **Egy bit bekapcsolása (pl. 3. bit):** | ||
| + | |||
| + | '' | ||
| + | |||
| + | Maszk legyen: '' | ||
| + | |||
| + | Megjegyzés: | ||
| + | |||
| + | Művelet: '' | ||
| + | |||
| + | Eredmény: | ||
| + | < | ||
| + | 10101001 | ||
| + | | 00000100 | ||
| + | ---------- | ||
| + | 10101101 (a 3. bit 1 lett) | ||
| + | </ | ||
| + | |||
| + | **Egy bit kikapcsolása (pl. 4. bit):** | ||
| + | |||
| + | '' | ||
| + | |||
| + | Maszk legyen: '' | ||
| + | |||
| + | Megjegyzés: | ||
| + | |||
| + | Művelet: '' | ||
| + | |||
| + | Eredmény: | ||
| + | < | ||
| + | 10101101 | ||
| + | & 11110111 | ||
| + | ---------- | ||
| + | 10100101 | ||
| + | </ | ||
| + | |||
| + | === Egy bit átkapcsolása (pl. 0. bit): === | ||
| + | |||
| + | Maszk legyen: '' | ||
| + | |||
| + | Művelet: '' | ||
| + | |||
| + | Eredmény: | ||
| + | < | ||
| + | 10101101 | ||
| + | ^ 00000001 | ||
| + | ---------- | ||
| + | 10101100 | ||
| + | </ | ||
| + | |||
| + | Újra alkalmazva ugyanezt a műveletet az új eredményen '' | ||
| + | |||
| + | < | ||
| + | 10101100 | ||
| + | ^ 00000001 | ||
| + | ---------- | ||
| + | 10101101 | ||
| + | </ | ||
| + | |||
| + | Az igazságtáblák és a fenti példák segítségével megérthető, | ||
tanszek/oktatas/szamitastechnika/binaris_muveletek.1727805855.txt.gz · Last modified: 2024/10/01 18:04 by knehez
