Стефан Дэвис - С++ для чайников .

Тут можно читать онлайн Стефан Дэвис - С++ для чайников . - бесплатно полную версию книги (целиком) без сокращений. Жанр: sci_tech, издательство Издательский дом Вильямс. Компьютерное издательство Диалектика, год 2007. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    С++ для чайников .
  • Автор:
  • Жанр:
  • Издательство:
    Издательский дом Вильямс. Компьютерное издательство Диалектика
  • Год:
    2007
  • Город:
    Москва
  • ISBN:
    0-7645-6852-3, 978-5-8459-0723-3
  • Рейтинг:
    4/5. Голосов: 11
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 80
    • 1
    • 2
    • 3
    • 4
    • 5

Стефан Дэвис - С++ для чайников . краткое содержание

С++ для чайников . - описание и краткое содержание, автор Стефан Дэвис, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru
empty-line
1
empty-line
4

С++ для чайников . - читать онлайн бесплатно полную версию (весь текст целиком)

С++ для чайников . - читать книгу онлайн бесплатно, автор Стефан Дэвис
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

В шестнадцатеричной системе обозначения цифр от 0 до 9 остаются теми же, а числа от 10 до 15 представляются с помощью первых шести букв алфавита: А вместо 10, В вместо 11 и т.д. Следовательно, 123 10— это 7В 16 .

123 = 7 * 16 1+ В ( т.е. 11 ) * 16 0= 7В 16

Поскольку программисты предпочитают представлять числа с помощью 4, 8, 16 или 32 битов, шестнадцатеричные числа состоят соответственно из 1, 2, 4 или 8 шестнадцатеричных разрядов ( даже если ведущие разряды равны 0 ).

В заключение замечу, что, так как терминал не поддерживает нижний индекс, записывать шестнадцатеричные символы в виде 7В 16 неудобно. Даже в том текстовом редакторе, который я использую сейчас, довольно неудобно всякий раз менять режимы шрифтов для ввода всего двух символов. Поэтому программисты договорились начинать шестнадцатеричные числа с ( это странное обозначение было придумано ещё во время разработки языка С ). Таким образом, 7В 16 равно 0x7В . Следуя этому соглашению, 0x7В равно 123, тогда как 0x123 равно 291.

К шестнадцатеричным числам можно применять все те же математические операторы, что и к десятичным. Просто нам трудно выполнить в уме умножение чисел 0хС * 0хЕ потому, что таблица умножения, которую мы учили в школе, применима только к десятичной системе счисления.

Выражения с римскими числами...61

Интересно, что некоторые системы чисел значительно препятствовали развитию математики. К таким относится и так называемая римская система. Сложить два римских числа не очень сложно:

XIX + XXVI = XLV

Последовательность выполнения сложения такова:

а) IX + VI : I после V "уничтожает" I перед X , поэтому в результате получаем XV ;

б) X + XX = XXX , если добавить ещё один X , получим XXXX , или XL .

Сложность вычитания римских чисел приблизительно такая же. Однако чтобы умножить два римских числа, требуется диплом бакалавра математики ( у вас волосы станут дыбом от правила, которое объясняет, как добавить к X разряд справа так, чтобы X*IV равнялось XL ). А уж о делении римских чисел можно писать целые диссертации. Словом, хорошо, что мы пользуемся арабскими числами...

_________________

61 стр. Глава 4. Выполнение логических операций

►Выполнение побитовых логических операций...62

Все числа С++ могут быть представлены в двоичном виде, т.е. с использованием только 0 и 1 в записи числа. В табл. 4.2 указаны операции, которые работают с числами побитово; отсюда и происходит название термина "побитовые операции".

Таблица 4.2. Побитовые операции

_________________

Оператор — Функция

¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯

~ — Каждый бит меняет своё значение на противоположное: 0 заменяется 1, 1 — нулём

& — Побитовое И: поочередно выполняет операцию И с парами битов левого и правого аргумента

| — Побитовое ИЛИ

^ — Побитовое исключающее ИЛИ

¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯

С помощью побитовых операций можно сохранять большое количество информации в маленьком участке памяти. В мире существует множество вещей, которые имеют только два состояния ( или, максимум, четыре ). Вы или женаты ( замужем ), или нет ( хотя можете быть в разводе или ещё не женаты ). Вы или мужчина, или женщина ( по крайней мере, так сказано в моих водительских правах ). В С++ каждую такую характеристику вы можете сохранить в одном бите. Таким образом, поскольку для хранения целого числа выделяется 4 байта, в тип int можно упаковать значения 32 разных свойств.

Кроме того, побитовые операции выполняются крайне быстро. Хранение 32 характеристик в одном типе не приводит ни к каким дополнительным затратам.

Хотя память становится всё дешевле она всё равно не безгранична Иногда при - фото 78

«Хотя память становится всё дешевле, она всё равно не безгранична. Иногда, при работе с большими объёмами данных, такая экономия с использованием битовых представлений весьма существенна.»

[ Советы ]

Побитовые операции с одним битом...62

Побитовые операторы &, ^, |и ~выполняют логические операции над отдельными битами числа. Если рассматривать 0 как false и 1 как true ( так принято, хотя можно ввести и другие обозначения ), то для оператора ~ справедливо следующее:

~1( true ) равно 0( false )

~0( false ) равно 1( true )

Оператор &определяется так:

1( true ) & 1 ( true ) равно 1( true )

1( true ) & 0 ( false ) равно 0( false )

0( false ) & 0 ( false ) равно 0( false )

0( false ) & 1 ( true ) равно 0( false )

Для оператора |:

1( true ) | 1 ( true ) равно 1( true )

1( true ) | 0 ( false ) равно 1( true )

0( false ) | 0 ( false ) равно 0( false )

0( false ) | 1 ( true ) равно 1( true )

_________________

62 стр. Часть 1. Первое знакомство с С++

Таблица 4.3. Таблица истинности оператора &

& 1 0

1 1 0

0 0 0

В таблице столбцы соответствуют значению одного аргумента, а строки — второго; результат операции находится на пересечении соответствующих строки и столбца. Так, из таблицы видно, что получить в результате операции &можно только если оба операнда равны 1. Далее в табл. 4.4 приведена таблица истинности оператора |( ИЛИ ).

Таблица 4.4. Таблица истинности оператора |

| 1 0

1 1 1

0 1 0

Для последнего логического оператора, называемого "исключающее или" ( XOR), прямой аналог в повседневной жизни найти труднее. Он возвращает значение true , если истинным является какой-то один ( но не оба! ) из его аргументов. Таблица истинности этого оператора представлена ниже ( табл. 4.5 ).

Таблица 4.5. Таблица истинности оператора ^

^ 1 0

1 0 1

0 1 0

Теперь, зная, как работают эти операторы с отдельными битами, рассмотрим их применение к двоичным числам.

Использование побитовых операторов...63

Побитовые операторы работают отдельно с каждым битом.

Побитовые операторы выполняются подобно любым другим арифметическим операторам. Самым лёгким для понимания является оператор ~ . Выполнить операцию ~над числом означает выполнить её над каждым битом числа.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Стефан Дэвис читать все книги автора по порядку

Стефан Дэвис - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




С++ для чайников . отзывы


Отзывы читателей о книге С++ для чайников ., автор: Стефан Дэвис. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x