Уведомления

Группа в Telegram: @pythonsu

#1 Авг. 30, 2017 16:40:26

Landberk
Зарегистрирован: 2017-08-30
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Системы счисления - помогите

Здравствуйте, я совсем недавно стала изучать Питон по книжке Лутца (“Изучаем Питон 4-е издание”), когда дело дошло до систем счисления, я сбилась с ритма, так как не понятно: переводить в различные системы счисления только с функциями oct, hex, bin? Нужно ли учить числа в разных системах счисления(возможно, нужно иметь какую-нибудь таблицу с переведенными числами) или как распознавать код, где именно они могут пригодиться?
И что за число изображено в коде на картинке (001234), почему два нуля?

Прикреплённый файлы:
attachment viber image.jpg (93,0 KБ)

Офлайн

#2 Авг. 30, 2017 17:42:08

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10003
Репутация: +  857  -
Профиль   Отправить e-mail  

Системы счисления - помогите

Landberk
И что за число изображено в коде на картинке (001234), почему два нуля?
Там спецификатор формата %06d, это значит: вывести целое число в поле ширины 6, заполняя пустое место ведущими нулями. Так как там 1234, то две цифры до шести цифр не хватает и в начале ставятся нули. Если ноль убрать (сделав %6d ), то будут пробелы выводиться, а не нули. А ширина полей задаётся тогда, когда выводишь таблицы чисел, чтобы таблицы ровными были (числа в разных строках могут быть разной длины и съезжать из-за этого).

Landberk
Нужно ли учить числа в разных системах счисления(возможно, нужно иметь какую-нибудь таблицу с переведенными числами) или как распознавать код, где именно они могут пригодиться?
Для систем счисления выучивается математический принцип формирования любого числа в любой системе счисления. Есть ещё ряд фишек, через которые можно быстро переводить из некоторых систем в другие по-быстрому.

Landberk
где именно они могут пригодиться?
В обычной жизни - адреса в памяти обычно в 16-ричной системе записываются. Открываешь программу какую-нибудь, а в ней файл бинарный; и вот чтобы перейти к какому-нибудь байту в этом файле, нужно знать 16-ричный адрес строки (строки - это отрезки по 16 байт). А сами байты записаны тоже в 16-ричной системе, потому что многие из них не имеют графического представления (в программах изображаются точками-пустотами). Ещё трафик если сетевой просматриваешь, там все сетевые пакеты тоже в таком виде. На старых компах 8-ричной системой пользовались. Сейчас в неё часто можно переходить из 16-ричной системы (если это кому надо). Ещё двоичная система часто используется. Чтобы передать модему, например, информацию типа: “включи режим такой-то”, “выключи режим такой-то”, “добавь данные такие-то”, “включи лампочку такую-то”, - достаточно просто каждую команду представить в виде одного бита (0/1 - да/нет), а потом эти биты выстроить в последовательность и засунуть в один байт. Так передаётся один байт (символ просто какой-то), в котором куча разных команд.



Отредактировано py.user.next (Авг. 30, 2017 17:51:53)

Офлайн

#3 Авг. 30, 2017 17:44:20

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2830
Репутация: +  186  -
Профиль   Отправить e-mail  

Системы счисления - помогите

Забей на них! Потом разберёшься если надо будет.



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Офлайн

#4 Авг. 30, 2017 20:32:25

Landberk
Зарегистрирован: 2017-08-30
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Системы счисления - помогите

Спасибо большое за ответы!

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version