Программирование на языке Ruby
Шрифт:
Метод
В данном примере мы полагаемся на то, что приведение выполнит тип аргумента. Но если мы хотим быть законопослушными гражданами, то должны реализовать приведение в своем классе, сделав его пригодным для работы с другими типами чисел. Для этого нужно знать, с какими типами мы в состоянии работать непосредственно, и при необходимости выполнять приведение к одному из этих типов. Если мы не можем сделать это самостоятельно, то должны обратиться за помощью к родительскому классу.
Разумеется, это будет работать только, если наш объект реализует методы
Метод
Мы не настаиваем на таком решении. Но рекомендуем реализовывать
5.17. Поразрядные операции над числами
Иногда требуется работать с двоичным представлением объекта
Ruby обладает всеми средствами для таких операций. Для удобства числовые константы можно записывать в двоичном, восьмеричном или шестнадцатеричном виде. Поразрядным операциям И, ИЛИ, ИСКЛЮЧАЮЩЕЕ ИЛИ и НЕ соответствуют операторы
Метод экземпляра
Имеются операторы сдвига влево и вправо (
Конечно, если сдвиг настолько велик, что дает нулевое значение, то знаковый бит теряется, поскольку -0 и 0 — одно и то же.
Квадратные скобки позволяют трактовать числа как битовые массивы. Бит с номером 0 всегда является младшим, вне зависимости от порядка битов в конкретной машинной архитектуре.
Присваивать новые значения отдельным битам с помощью такой нотации невозможно (поскольку
5.18. Преобразование системы счисления
Ясно, что любое целое число можно представить в любой системе счисления, поскольку хранятся эти числа в двоичном виде. Мы знаем, что Ruby умеет работать c целыми константами, записанными в любой из четырех наиболее популярных систем. Следовательно, разговор о преобразовании системы счисления может вестись только применительно к числам, записанным в виде строк.
Империум. Антология к 400-летию Дома Романовых
Фантастика:
фэнтези
социально-философская фантастика
героическая фантастика
научная фантастика
боевая фантастика
альтернативная история
рейтинг книги
Буря Жнеца
7. «Малазанская империя»
Фантастика:
фэнтези
рейтинг книги
Философия Науки. Хрестоматия
Научно-образовательная:
философия
рейтинг книги
Противостояние. Том II
Фантастика:
социально-философская фантастика
научная фантастика
ужасы и мистика
рейтинг книги
7 историй для девочек
Детские:
детская проза
рейтинг книги
Я уже князь. Книга XIX
19. Дорогой барон!
Фантастика:
юмористическое фэнтези
попаданцы
аниме
рейтинг книги
Имаджика
7. Книга-загадка, книга-мистика
Фантастика:
фэнтези
рейтинг книги
Кир Булычев. Собрание сочинений в 18 томах. Т.9
Собрания сочинений
Фантастика:
альтернативная история
рейтинг книги
Геймер. Тетралогия
Фантастика:
альтернативная история
рейтинг книги
Офицер
1. Офицер
Фантастика:
боевая фантастика
рейтинг книги
Сказки и истории
Проза:
классическая проза
рейтинг книги
Эрсус. Инферно
3. Стезя Эрсуса
Фантастика:
фэнтези
рейтинг книги
Посланник
2. Страж
Фантастика:
научная фантастика
космическая фантастика
рейтинг книги