Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

Čo robí Out of Bounds koncentrácie na počítači

? Jedným zo základných častí každého programu je variabilná . Premenná predstavuje hodnotu uloženú do pamäte počítača . Spôsob , akým programy , prístup k dátam je však dôležité : pomocou kolekcia dát tzv pole , to stane sa možné pre programátorov vykonávať nechcené výpočty pomocou neznámych hodnôt v pamäti . Tým , že ide mimo hranice poľa , programátor v podstate začne prípadne zmeniť hodnoty v pamäti , ktoré môžu predstavovať významnú funkciu programu alebo celého systému samotného . Computer Memory

pamäte v počítačovom systéme , je po rade . To znamená , že premenné deklarované sa nachádzajú v pamäti vedľa na iné premenné , alebo iné kusy dát . Pamäťové sloty sú rozdelené podľa ich typu , takže dostatok pamäte je vyhradená pre každý typ . Napríklad , ak sa program zruší celočíselné premenné a premenné znak , že by sa určia dve bajtov pamäte pre celé číslo , potom jeden byte na znak .
Pole

Programátori môžu tiež zrušil pole hodnôt , ktoré predstavujú súbor hodnôt , pod rovnakým názvom premennej . Takže namiesto toho prehlasuje , päť rôznych celočíselné premenné , ktoré predstavujú zoznam , programátor deklaruje rad piatich hodnôt , ktoré sú umiestnené pod názvom polia a sú prístupné pomocou odkazu nuly vychádzajúci index poľa je . Preto , keď nastaví programátor bokom celý rad , počítač vyčleňuje dostatok kontinuálne pamäte pre množstvo hodnôt pole bude držať . Takže , ak programátor deklaruje rad piatich čísel , počítač zrušil ďalšie voľné miesto v pamäti , ktoré môže pojať päť celých čísel .
Pole a Out of Bounds

Programátor môže deklarovať pole a prístup k jeho hodnôt prostredníctvom prístupu na indexy , ktoré obsahujú hodnoty . Avšak , v niektorých programovacích jazykoch , ako je C , nie je nič zastaviť programátor náhodnému pokuse o prístup k indexu nie je súčasťou poľa . Napríklad programátor pomocou piatich celočíselné pole by sa mohli pokúsiť o prístup šiesty hodnotu . Programátor je preč " mimo hraníc " z poľa : hodnota neexistuje ako súčasť poľa , takže teraz programátor sa snaží pristupovať k pamäti mimo poľa
nutnosť . z Bounds Kontrola

ísť mimo hranice poľa , programátor je teraz potenciálne manipuláciu s dátami v iných pamäťových miest . S najväčšou pravdepodobnosťou , programátor nemá tušenie , čo je v tejto pamäti : mohlo by to byť údaje pre ďalšie premenné , alebo referenčné miesta pre iné funkcie . Ak programovací jazyk nekontroluje hranice tým , znemožňujúce programátorom prístup k dátam mimo poľa , programátor mohol prepísať kód , ktorý vykonáva kritické funkcie , z príčiny aktuálny program pre zobrazenie nezamýšľané správanie .


Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené