InformĂĄciĂłs technolĂłgia

P's komplemens képzés

Az elƑzƑ rĂ©szben megismertĂŒk, hogyan egĂ©szĂ­tjĂŒk ki a szĂĄmokat Ășgy, hogy minden helyiĂ©rtĂ©ken elĂ©rjĂŒk a maximumot — ez volt a p−1’s komplemens elve.
Most jön a trĂŒkk, amitƑl a szĂĄmĂ­tĂłgĂ©p mĂ©g hatĂ©konyabban szĂĄmol: a p’s komplemens.

A p’s komplemens tulajdonkĂ©ppen a „felturbĂłzott” verziĂł.
Mindössze annyit csinålunk, hogy a koråbban kapott komplemenshez hozzåadunk +1-et.
És ennyi – ezzel mĂĄr nem csak kiegĂ©szĂ­tjĂŒk a szĂĄmot, hanem elĂ©rjĂŒk a következƑ „alapĂ©rtĂ©ket”:
a 10-es szĂĄmrendszerben a 1000-et,
a binárisban a 1000₂-t.

Anime-lĂĄny magyarĂĄzza, hogyan lesz a kivonĂĄsbĂłl összeadĂĄs a +1 trĂŒkkel, azaz mi az a p's komplemens kĂ©pzĂ©s

Ezzel a módszerrel a szåmítógép kivonås helyett is összeadåssal dolgozik.
Nincs kĂŒlön kivonĂĄsi mƱvelet, nincs bonyolult logika – csak egyszerƱ, villĂĄmgyors aritmetika:
komplemens kĂ©pzĂ©s + 1 = kivonĂĄs. ⚡

A következƑ pĂ©ldĂĄban ezt lĂ©pĂ©srƑl lĂ©pĂ©sre nĂ©zzĂŒk meg, Ă©s megnĂ©zzĂŒk, hogyan „gondolkodik” Ă­gy a gĂ©p.

MiĂ©rt van egyĂĄltalĂĄn szĂŒksĂ©g a p’s komplemensre?

A szĂĄmĂ­tĂłgĂ©pek hihetetlenĂŒl gyorsak, de csak addig, amĂ­g az elvĂ©gzendƑ mƱvelet egyszerƱ.
Az összeadĂĄs pĂ©ldĂĄul nagyon könnyƱ a gĂ©pnek – logikai kapukkal, bitek sorozatĂĄval pillanatok alatt elintĂ©zi. A kivonĂĄs viszont mĂĄr egy sokkal bonyolultabb dolog lenne.

De miért bonyolult a kivonås?
Mert a gĂ©p nem „érti” a negatĂ­v szĂĄmokat maguktĂłl.
Ha azt mondanĂĄnk neki, hogy “szĂĄmold ki 34 − 56”, Ƒ csak nĂ©zne Ă©rtetlenĂŒl – hiszen 56 nagyobb, mint 34.
EzĂ©rt kellett kitalĂĄlni egy okos trĂŒkköt, amivel a kivonĂĄs is elintĂ©zhetƑ egy sima összeadĂĄssal.

És itt lĂ©p be a komplemens kĂ©pzĂ©s. 💡

A p−1’s komplemens mĂĄr megmutatta, hogyan egĂ©szĂ­thetĂŒnk ki egy szĂĄmot a maximĂĄlis Ă©rtĂ©kig.
A p’s komplemens pedig mĂ©g egy lĂ©pĂ©ssel tovĂĄbbmegy:
ha az elƑzƑ komplemenshez hozzĂĄadunk +1-et, akkor mĂĄr a rendszer alapĂ©rtĂ©kĂ©ig (pⁿ-ig) egĂ©szĂ­tjĂŒk ki a szĂĄmot.

Így kapjuk meg a p’s komplemenst, ami a szĂĄmĂ­tĂłgĂ©p titkos fegyvere a gyors kivonĂĄshoz: a gĂ©p egyszerƱen hozzĂĄadja a p’s komplemenst, Ă©s megspĂłrolja az egĂ©sz kivonĂĄst.

Mi történik, amikor hozzåadjuk azt a bizonyos +1-et?

A „p–1-es komplemens” az volt, hogy a szĂĄmot a legnagyobb lehetsĂ©ges Ă©rtĂ©kig (pⁿ−1) egĂ©szĂ­tjĂŒk ki.
A „p’s komplemens” viszont a teljes körig, pⁿ-ig egĂ©szĂ­t — ez az aprĂł kĂŒlönbsĂ©g az egĂ©sz lĂ©nyege.

đŸ”č VegyĂŒnk egy pĂ©ldĂĄt

p = 10
N = 3
x = 234

A p–1-es komplemens (9-es komplemens) az volt: 999 − 234 = 765

Most, hogy p’s komplemenst kapjunk, hozzáadunk +1-et → 765 + 1 = 766

Azt, hogy ha 234-hez hozzĂĄadod a sajĂĄt p’s komplemensĂ©t (766), akkor pont 10Âł = 1000 lesz az eredmĂ©ny.

Na most: ha hĂĄrom jegyen (N=3) dolgozunk, akkor a 1000 mĂĄr tĂșl nagy — 4 jegyƱ!
A gép viszont csak 3 jegyet tud tårolni, ezért az ezrest (a legbaloldalibb szåmjegyet) egyszerƱen eldobja.

És itt jön a „tĂșlcsordulĂĄs” (overflow):
az a „1” a 1000 elejĂ©n kiesik a rendszerbƑl, mert nincs helye. A szĂĄm visszateker 000-ra — mintha körbeĂ©rt volna. EzĂ©rt mondjuk, hogy a p’s komplemens „átcsordulĂĄssal” mƱködik.

Miért pont ez segít a kivonåsnål?

Mert nézd meg, mit csinåltunk valójåban:

  • 234 + 766 = 1000

  • A tĂșlcsordulĂł 1 eltƱnik → marad 000

De ha nem az egĂ©sz szĂĄmot, hanem egy mĂĄsik Ă©rtĂ©ket vonnĂĄl ki, pĂ©ldĂĄul 500 − 234, akkor Ă­gy szĂĄmolna a gĂ©p:

1ïžâƒŁ KiszĂĄmĂ­tja a kivonandĂł (234) p’s komplemensĂ©t: 766
2ïžâƒŁ Összeadja a mĂĄsikkal: 500 + 766 = 1266
3ïžâƒŁ Kidobja a tĂșlcsordulĂł ezrest (pⁿ = 1000) → marad 266

És láss csodát:
500 − 234 = 266 ✅

TehĂĄt: A gĂ©p a kivonĂĄst p’s komplemenssel valĂł összeadĂĄskĂ©nt szĂĄmolja ki.

Nincs negatĂ­v logika — csak egy egyszerƱ összeadĂĄs. 

Feladatok

1. feladat: szåmold ki a "gép fejével", hogyan végezné el az alåbbi kivonåst:

500-234 = 266

MegoldĂĄs

A gép fejével: p's komplemens módszer, p = 10, N = 3

1ïžâƒŁ KiszĂĄmĂ­tja a kivonandĂł (234) 9-es komplemensĂ©t:
999 − 234 = 765

2ïžâƒŁ Ehhez hozzĂĄad +1-et, hogy megkapja a 10-es komplemenst:
765 + 1 = 766

3ïžâƒŁ Most összead:
500 + 766 = 1266

4ïžâƒŁ A legbaloldali jegy (1) tĂșlcsordul → leesik
→ marad 266

✅ EredmĂ©ny: 266

2. feladat: szåmold ki a "gép fejével", hogyan végezné el az alåbbi kivonåst:

120-89 = 31

MegoldĂĄs

A gép fejével: p's komplemens módszer, p = 10, N = 3

1ïžâƒŁ 999 − 089 = 910

2ïžâƒŁ Ehhez hozzĂĄad +1-et, hogy megkapja a 10-es komplemenst:
910 + 1 = 911

3ïžâƒŁ Most összead:
120 + 911 = 1031

4ïžâƒŁ A legbaloldali jegy (1) tĂșlcsordul → leesik
→ marad 031

✅ EredmĂ©ny: 31

3. feladat: szåmold ki a "gép fejével", hogyan végezné el az alåbbi kivonåst:

402 - 756 = -354

MegoldĂĄs

A gép fejével: p's komplemens módszer, p = 10, N = 3

1ïžâƒŁ 999 − 756 = 243

2ïžâƒŁ Ehhez hozzĂĄad +1-et, hogy megkapja a 10-es komplemenst:
243 + 1 = 244 

3ïžâƒŁ Most összead:
402 + 244 = 646

4ïžâƒŁ Nincs tĂșlcsordulĂĄs, tehĂĄt az eredmĂ©ny negatĂ­v!  A gĂ©p ezt Ășgy jelzi, hogy az eredmĂ©ny maga egy komplemens alak. Mit jelent ez? 999 - 646 = 353, majd +1 = 354
→ marad 031

✅ EredmĂ©ny: - 354

Ha szeretnéd folytatni a tanulåst, itt vålogathatsz az informåciós technológia anyagok között