From Wikipedia, the free encyclopedia
У математици, степен двојке означава број форме 2n где је n цео број, тј. резултат степеновања бројем два као базом и целим бројем n као експонентом.
У контексту у ком се разматрају само цели бројеви, n је ограничен на не-негативне вредности,[1] тако да имамо 1, 2, и 2 помножене самим собом одређени број пута.[2]
Због тога што је два основа у систему бинарних бројева, степен двојке је чест у рачунарској науци. Записан у бинарном облику, степен двојке увек има форму 100…000 или 0.00…001, баш као и степен десетке у децималном систему.
Два на степен n, написано као 2n, је број начина на који се битови у бинарном систему дужине n могу организовати. Реч, тумачена као неозначен цео број, може бити представљена вредностима од 0 (000…000) до 2n − 1 (111…111) закључно. Одговарајућа целобројна вредност може бити позитивна, негативна или нула; види представе означених бројева. У сваком случају, један мање од степена двојке је често горња граница целих бројева код бинарних рачунара. Као последица, бројеви ове форме се често појављују у рачунарском софтверу. На пример, видео игрица покренута на 8-битном систему може ограничити резултат или број предмета које играч може ностити на 255— резултат коришћења бајта, који је дугачак 8 бита, да сачува број, дајући максималну вредност 28 − 1 = 255. На пример, у делу Легенда о Зелди, главни лик је ограничен да чува 255 рупија (валута у игрици) у било ком тренутку, док се видео игра Пек-Мен чувено гаси на нивоу 255.
Степен двојке се користи за мерење рачунарске меморије. Бајт сада садржи осам бита (октет, као резултат могућности 256 вредности (28). (Израз бајт је некад значио (и у неким случајевима још увек значи) скуп битова, уобичајено 5 до 32 бита, пре него само 8-битних јединица.) Префикс кило, у вези са бајтом, може бити, и одувек је био, коришћен као 1,024 (210). Међутим, уопште, израз кило је био коришћен у Међунардном систему јединица у значењу 1,000 (103). Бинарни префикси су били стандардизовани, као што киби (Ki) значи 1,024. Скоро сви процесорски регистри имају величину степена двојке, 32 или 64 су најчешћи.
Степен двојке се појављује на другим местима такође. За многе дискове, барем једна величина сектора, број сектора по стази, и број стаза по површини диска је степен двојке. Величина логичког блока је скоро увек степен двојке.
Геометријска прогресија 1, 2, 4, 8, 16, 32, … (или, у бинарном бројевном систему 1, 10, 100, 1000, 10000, 100000, … ) је важна у теорији бројева. 9. књига, 36. предлог Елемената доказује да ако је сума првих n чланова ове прогресије прост број (значи, Мерсенов прост број поменут изнад), онда ова сума помножена n-тим чланом је савршен број. На пример, сума првих 5 чланова низа 1 + 2 + 4 + 8 + 16 = 31, који је прост број. Сума 31 помножена са 16 (5. члан низа) је једнака 496, који је савршен број.
9. књига, 35 Предлог, доказује да ако је у геометријском низу први члан одузет од другог и последњег члана низа, онда је вишак другог први—тако да је вишак последњег све оно пре њега. (Ово је преправка наше формуле за геометријски низ изнад.) Примењујући ово на геометријску прогресију 31, 62, 124, 248, 496 (која резултује од 1, 2, 4, 8, 16 множењем свих чланова до 31), видимо да 62 минус 31 је 31 као и 496 минус 31 је збир 31, 62, 124, 248. Стога, бројеви 1, 2, 4, 8, 16, 31, 62, 124 и 248 додати до 496 и даље су сви ови бројеви деле број 496. Под претпоставком да p дели број 496 и није међу овим бројевима. Претпоставимо да су p q једнаки 16 × 31, или да је 31 q, а p 16. Сада p не може да дели 16 или би било међу бројевима 1, 2, 4, 8 или 16. Стога, 31 не може да дели q. И како 31 не дели q и q је 496, основна теорема аритметике имплицира да q мора да дели 16 и да буде међу бројевима 1, 2, 4, 8 или 16. Нека q буде 4, онда p мора бити 124, што је немогуће с обзиром на то да хипотеза p није међу бројевима 1, 2, 4, 8, 16, 31, 62, 124 или 248.
20 | = | 1 | 216 | = | 65,536 | 232 | = | 4,294,967,296 | 248 | = | 281,474,976,710,656 | 264 | = | 18,446,744,073,709,551,616 | 280 | = | 1,208,925,819,614,629,174,706,176 |
21 | = | 2 | 217 | = | 131,072 | 233 | = | 8,589,934,592 | 249 | = | 562,949,953,421,312 | 265 | = | 36,893,488,147,419,103,232 | 281 | = | 2,417,851,639,229,258,349,412,352 |
22 | = | 4 | 218 | = | 262,144 | 234 | = | 17,179,869,184 | 250 | = | 1,125,899,906,842,624 | 266 | = | 73,786,976,294,838,206,464 | 282 | = | 4,835,703,278,458,516,698,824,704 |
23 | = | 8 | 219 | = | 524,288 | 235 | = | 34,359,738,368 | 251 | = | 2,251,799,813,685,248 | 267 | = | 147,573,952,589,676,412,928 | 283 | = | 9,671,406,556,917,033,397,649,408 |
24 | = | 16 | 220 | = | 1.048.576 | 236 | = | 68,719,476,736 | 252 | = | 4,503,599,627,370,496 | 268 | = | 295,147,905,179,352,825,856 | 284 | = | 19,342,813,113,834,066,795,298,816 |
25 | = | 32 | 221 | = | 2,097,152 | 237 | = | 137,438,953,472 | 253 | = | 9,007,199,254,740,992 | 269 | = | 590,295,810,358,705,651,712 | 285 | = | 38,685,626,227,668,133,590,597,632 |
26 | = | 64 | 222 | = | 4,194,304 | 238 | = | 274,877,906,944 | 254 | = | 18,014,398,509,481,984 | 270 | = | 1,180,591,620,717,411,303,424 | 286 | = | 77,371,252,455,336,267,181,195,264 |
27 | = | 128 | 223 | = | 8,388,608 | 239 | = | 549,755,813,888 | 255 | = | 36,028,797,018,963,968 | 271 | = | 2,361,183,241,434,822,606,848 | 287 | = | 154,742,504,910,672,534,362,390,528 |
28 | = | 256 | 224 | = | 16.777.216 | 240 | = | 1,099,511,627,776 | 256 | = | 72,057,594,037,927,936 | 272 | = | 4,722,366,482,869,645,213,696 | 288 | = | 309,485,009,821,345,068,724,781,056 |
29 | = | 512 | 225 | = | 33,554,432 | 241 | = | 2,199,023,255,552 | 257 | = | 144,115,188,075,855,872 | 273 | = | 9,444,732,965,739,290,427,392 | 289 | = | 618,970,019,642,690,137,449,562,112 |
210 | = | 1024 | 226 | = | 67,108,864 | 242 | = | 4,398,046,511,104 | 258 | = | 288,230,376,151,711,744 | 274 | = | 18,889,465,931,478,580,854,784 | 290 | = | 1,237,940,039,285,380,274,899,124,224 |
211 | = | 2,048 | 227 | = | 134,217,728 | 243 | = | 8,796,093,022,208 | 259 | = | 576,460,752,303,423,488 | 275 | = | 37,778,931,862,957,161,709,568 | 291 | = | 2,475,880,078,570,760,549,798,248,448 |
212 | = | 4.096 | 228 | = | 268.435.456 | 244 | = | 17,592,186,044,416 | 260 | = | 1,152,921,504,606,846,976 | 276 | = | 75,557,863,725,914,323,419,136 | 292 | = | 4,951,760,157,141,521,099,596,496,896 |
213 | = | 8,192 | 229 | = | 536,870,912 | 245 | = | 35,184,372,088,832 | 261 | = | 2,305,843,009,213,693,952 | 277 | = | 151,115,727,451,828,646,838,272 | 293 | = | 9,903,520,314,283,042,199,192,993,792 |
214 | = | 16,384 | 230 | = | 1,073,741,824 | 246 | = | 70,368,744,177,664 | 262 | = | 4,611,686,018,427,387,904 | 278 | = | 302,231,454,903,657,293,676,544 | 294 | = | 19,807,040,628,566,084,398,385,987,584 |
215 | = | 32,768 | 231 | = | 2,147,483,648 | 247 | = | 140,737,488,355,328 | 263 | = | 9,223,372,036,854,775,808 | 279 | = | 604,462,909,807,314,587,353,088 | 295 | = | 39,614,081,257,132,168,796,771,975,168 |
Првих неколико степена 210 су мало виши од ових од 1000:
20 | = | 1 | = 10000 | (0% одступања) |
210 | = | 1 024 | ≈ 10001 | (2.4% одступања) |
220 | = | 1 048 576 | ≈ 10002 | (4.9% одступања) |
230 | = | 1 073 741 824 | ≈ 10003 | (7.4% одступања) |
240 | = | 1 099 511 627 776 | ≈ 10004 | (10% одступања) |
250 | = | 1 125 899 906 842 624 | ≈ 10005 | (12.6% одступања) |
260 | = | 1 152 921 504 606 846 976 | ≈ 10006 | (15.3% одступања) |
270 | = | 1 180 591 620 717 411 303 424 | ≈ 10007 | (18.1% одступања) |
280 | = | 1 208 925 819 614 629 174 706 176 | ≈ 10008 | (20.9% одступања) |
290 | = | 1 237 940 039 285 380 274 899 124 224 | ≈ 10009 | (23.8% одступања) |
2100 | = | 1 267 650 600 228 229 401 496 703 205 376 | ≈ 100010 | (26.8% одступања) |
2110 | = | 1 298 074 214 633 706 907 132 624 082 305 024 | ≈ 100011 | (29.8% одступања) |
2120 | = | 1 329 227 995 784 915 872 903 807 060 280 344 576 | ≈ 100012 | (32.9% одступања) |
Види још ИEEE 1541-2002.
У вези са нимберима ови бројеви се често називају Фермаови 2-степени бројеви.
Бројеви формирају ирационални низ: за сваки низ позитивних целих бројева, низ
конвергира до ирационалног броја. Упркос брзом порасту овог низа, он најспорије расте у ирационалност од свих познатих низова.[3]
целобројне
променљиве у Јава и C# програмским језицима. Кардиналних
или Целобројних
променљивих у Паскал програмском језику. Бинарно представљање целих бројева омогућава брзу проверу ради утврђивања да ли је неки дати позитиван цео број x степен двојке:
где је & битовска логичка ЕНД операција. Приметимо да ако је x 0, ово погрешно указује на то да је 0 степен двојке, тако да ова провера важи само за x > 0.
Примери:
1…111…1 | 1…111…111…1 | |||||
0…010…0 | 0…010…010…0 | |||||
0…001…1 | 0…010…001…1 | |||||
0…000…0 | 0…010…000…0 |
Доказ концепта:
Доказ користи технику контрадикторне изјаве.
Изјава С: Ако је x&(x-1) = 0 и x је цео број већи од нуле онда је x = 2k (где је k цео број такав да је k>=0).
Контрадикторан концепт:
С1: P -> Q је исто као и С2: ~Q -> ~P У пређашњим изјавама С1 и С2 ове су контрадикторне у односу једна на другу. Тако да се изјава С може преправљати као испод С': Ако је x позитиван цео број и x ≠ 2k (k iје неки не-негативни цео број) онда је x&(x-1) ≠ 0
Доказ:
Ако је x ≠ 2k онда најмање два бита x-а су сетови. (Претоставимо да су m битови сет.) Сада, бит образац x - 1 се може добити инвертовањем свих битова x-а до првог сета бита х-а (почевши од НЗБ и настављајући ка НЗБ, овај сет инклузивног бита). Сада, претпоставимо да израз x & (x-1) има све нуле битова до првог сета х-а и како x & (x-1) има исто преосталих битова као x и x има најмање два сета битова отуда је исказ x & (x-1) ≠ 0 тачан.
Као горе наведено уопптавање, бинарна представа целих бројева омогућава израчунавање модула не-негативног целог број (x) са степеном двојке (y) веома брзо:
где је & битовска логичка ЕНД операција. Ово заобилази потребу да се изврши скупоцена подела. Ово је корисно ако је модуо операције значајна део извршавања критичне путање, јер то може бити много брже од обичног модуо оператора.
Следећа формула налази најближи степен двоке, на логаритамског скали, за дату вреност x > 0:
Ако је x целобројна вредност, следећи кораци се могу користити да проналажење најближе вредности (у односу на стварне вредности пре него на бинарни логаритам) у рачунарском програму:
Понекад је потребно наћи последњи степен двојке који није мањи од конкретног целог броја, n. Псеудокод алгоритма за израчунавање следећег већег степена двојке је следећи. Ако је унос степен двојке, вратиће се непромењен.[8]
n = n - 1;
n = n | (n >> 1);
n = n | (n >> 2);
n = n | (n >> 4);
n = n | (n >> 8);
n = n | (n >> 16);
...
n = n | (n >> (bitspace / 2));
n = n + 1;
Где је | бинарни или оператор, >> је бинарни оператор за померање удесно, а бит размак је величине (у битовима) целобројног размака представњеним n-ом. За много рачунарских архитектура, ова вредност је такође или 8, 16, 32 или 64. Овај оператор ради постављањем свих битова на десну страну најзначајнијег обеженог бита до 1, а затим се повећава целокупна вредност на крају тако да долази до ''превртања” до најближег степена двојке. Пример сваког корака овог алгоритма за број 2689 је следећи:
Бинарни запис | Децимални запис |
---|---|
0101010000001 | 2,689 |
0101010000000 | 2,688 |
0111111000000 | 4,032 |
0111111110000 | 4,080 |
0111111111111 | 4,095 |
1000000000000 | 4,096 |
Као што је горе приказано, алгоритам враћа тачну вредност 4,096. Најближи степен 2,689 је 2,048; међутим, алгоритам је креиран да даје само следећи највећи степен двоје датог броја, не најближи.
Други начин за добијање 'следећег највећег' степен двојке датог броја независног од дужине бит размака је следећи.
unsigned int get_nextpowerof2(unsigned int n)
{
/*
* Below indicates passed no is a power of 2, so return the same.
*/
if (!(n & (n-1))) {
return (n);
}
while (n & (n-1)) {
n = n & (n-1);
}
n = n << 1;
return n;
}
За било који цео број, x и интеграл степена двојке, y, ако је z = y - 1,
x до вишеструког y.
Збир свих n-одабраних биномних коефицијената је једнак 2n. Размотримо скуп свих бинарних целобројних n-цифара. Његова кардиналност је
Број темена једног n-димензионалног хиперкуба је 2n. Слично томе, број (n − 1)-лица n-димензионалног унакрсног политопа је такође 2n и формула за број x-лица n-димензионалног унакрсног политопа је .
Збир реципрпчних бројева степена двојке је 2. Збир реципрочних бројева степена двојке на квадрат је 1/3.
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.