Как запомнить знаковые и беззнаковые диапазоны максимальных значений
Не будем о том зачем это нужно. Это может пригодиться в самых разных случаях. Итак, как же запомнить эти числа тем, кто не очень дружит с запоминанием чисел. Вот эти диапазоны: Код:
signed char -128, 127 unsigned char 255 signed short int -32768, 32767 unsigned short int 65535 signed long int -2147483648, 2147483647 unsigned long int 4294967295 1. все знаковые отрицательные (предельные значения естественно) числа всегда оканчиваются на цифру 8 2. все знаковые положительные числа всегда оканчиваются на цифру 7 3. все беззнаковые предельные числа всегда оканчиваются на цифру 5 Итак это легко запомнить. При этом для простого char достаточно помнить числа 12 и 25 (-128, 127 и 255). Сложнее запомнить тип short и int. Тут подход тот же самый: выявляем закономерности. Возьмем тип знаковый short. Это числа -32768 и 32767. Мы видим что эти числа различаются только последней цифрой, которая как мы уже знаем, может быть только 7 или 8. Значит нам нужно запомнить только 4 цифры: 3276. Мы замечаем, что все цифры разные, и что тройка на единицу больше чем следующая за ней цифра 2. А цифра 7 больше на единицу следующей за ней цифры 6. К тому же цифры 3 и 7 нечетные, а цифры 2 и 6 четные. Поэтому достаточно запомнить только числа 37 или 26, чтобы по ним пользуясь правилами закономерности, вспомнить всё число 3276. Далее беззнаковое short. Это число 65535. Сразу отбрасываем 5: 6553. Надо запомнить 4 цифры. Сразу отмечаем, что беззнаковое начинается на цифру 6, которая вдвое больше, чем первая цифра знакового: 3. Далее: 1. вторая цифра на единицу меньше, чем первая. 2. следующая одинакова со второй. А последняя тройка вдвое меньше чем первая. Итак идем далее и берем тип int. Это числа -2147483648, 2147483647 и 4294967295. Как запомнить это? Опять выявляем закономерности. Числа имеют по 10 цифр. Отбрасывая последнюю цифру,которая может быть только 7, 8 или 5 (для беззнакового предельного числа), мы имеем уже 9 цифр. Берем знаковое число без последней цифры. Значит нам нужно запомнить число 214748364. Сразу отметим и запомним, что оно начинается на 2, а оканчивается на вдвое большую цифру; 4. Разделим оставшиеся цифры на блоки для большей ясности: 147 48 36. Что мы здесь видим, какие закономерности? 1. число 47 тоже самое число, которым оканчивается положительно знаковое число: 2147483647. 2. цифра 1 меньше на единицу, чем первая цифра: 2147483647. (Помните, как в типе short?). 3. число 48 тоже самое число, которым заканчивается отрицательное предельное число: 2147483648. 4. числа 48 и 36 имеют одинаковую особенность, что вторая цифра в два раза больше чем первая. 5. цифра 3 на единицу меньше цифры 4 в числе 48. При этом достаточно запомнить, что число начинается на 2, и цифры 48 и 36. Теперь берем беззнаковое целое 4294967295. Как его запомнить? Сразу отбрасываем пятерку, получая 429496729. Отмечаем, что беззнаковое начинается на 4, вдвое большее цифры 2 в знаковом числе. Далее: 1. видим, что число 29 повторяется дважды: 429496729, в конце и сразу после первой цифры 4. И что вторая цифра 2 вдвое меньше первой цифры 4. Выделим блоки: 4 29 49 67 29. 2. цифра 7, которая стоит перед последним числом 29, есть разность 9 - 2 = 7. 3. цифра 6, которая стоит перед цифрой 7, на единицу меньше семерки. 4. число 49, которое стоит перед чцифрой 6 (или числом 67) получается 6 * 7 = 42 + 9 - 2 = 49. 5. или цифра 9 в числе 49 есть перевернутая цифра 6 в числе 67. 6. тогда, цифра 4 в числе 49 есть вторая после первого числа 29 и равна первой цифре предельного беззнакого числа: 4 29 49 67 29 5. Вот кажется и всё на этом. Если кто выявит и другие закономерности, которые упрощают запоминание сих чисел, прошу указать это в комментариях. Спасибо за внимание! |
Всего комментариев 46
Комментарии
-
Запись от Croessmah размещена 13.06.2024 в 18:57 -
Запись от Croessmah размещена 13.06.2024 в 18:59 -
Продолжим изучать закономерности
https://oeis.org/A001146/b001146.txt
Кликните здесь для просмотра всего текста0 2
1 4
2 16
3 256
4 65536
5 4294967296
6 18446744073709551616
7 340282366920938463463374607431768211456
8 115792089237316195423570985008687907853269984665640564039457584007913129639936
9 13407807929942597099574024998205846127479365820592393377723561443721764030073546 976801874298166903427690031858186486050853753882811946569946433649006084096
10 17976931348623159077293051907890247336179769789423065727343008115773267580550096 31327084773224075360211201138798713933576587897688144166224928474306394741243777 67893424865485276302219601246094119453082952085005768838150682342462881473913110 540827237163350510684586298239947245938479716304835356329624224137216
11 32317006071311007300714876688669951960444102669715484032130345427524655138867890 89319720141152291346368871796092189801949411955915049092109508815238644828312063 08773673009960917501977503896521067960576383840675682767922186426197561618380943 38476170470581645852036305042887575891541065808607552399123930385521914333389668 34242068497478656456949485617603532632205807780565933102619270846031415025859286 41771167259436037184618573575983511523016459044036976132332872312271256847108202 09725157101726931323469678542580656697935045997268352998638215525166389437335543 602135433229604645318478604952148193555853611059596230656
12 10443888814131525066917527107166243825799642490473837803842334832839539079715574 56848826811934997558340890106714439262837987573438185793607263236087851365277945 95697654370999834036159013438371831442807001185594622637631883939771274567233468 43445866174968079087058037040712840487401186091144679777835980290066869389768817 87785946905630190260940599579453432823469303026696443059025015972399867714215541 69383555988529148631823791443449673408781187263949647510018904134900841706167509 36683338505510329720882695507699836163694119330152137968258371880918336567512213 18492846368125550225998300412344784862595674492194617023806505913245610825731835 38008760862210283427019769820231316901767800667519548507992163641937028537512478 40149071591354599827905133996115517942711068311340905842728842797915548497829543 23534517065223269061394905987693002122963395687782878948440616007412945674919823 05057164237715481632138063104590291613692670834285644073044789997190178146576347 32238502672530598997959960907994692017746248177184498674556592501783290704731194 33165550807568221846571746373296884912819520317457002440926616910874148385078411 92980452298185733897764810312608590300130241346718972667321649151113160292078173 8033436090243804708340403154190336
13 ...
Python 1
print( *[ str(2**(2**i)) for i in range(13) ], sep='\n')
Запись от politoto размещена 14.06.2024 в 07:34 -
Запись от CoderHuligan размещена 14.06.2024 в 17:39 -
Ширпотребные процессоры не во всём 64-битные:
Bash 1
grep bit /proc/cpuinfo
address sizes : 36 bits physical, 48 bits virtual
Для архитектурного семейства и конкретных моделей значимы и другие степени 2.Запись от politoto размещена 18.06.2024 в 13:40 -
Запись от AlexProgramm размещена 21.06.2024 в 14:27