рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Доступ к отдельному биту.

Доступ к отдельному биту. - раздел Философия, Лекция 1. Объектно-ориентированное программирование – это новый подход к программированию. Объектно- ориентированные языки обладают свойством   Одним Из Методов, Позволяющих Доступ К Биту - Это Использован...

 

Одним из методов, позволяющих доступ к биту - это использование полей битов. Поля битов – это специальный тип членов структуры, в котором определено из скольких бит состоит каждый элемент. Основная форма объявления такой конструкции следующая:

struct имя_стуктуры

{

тип имя1: длина в битах

тип имя2: длина в битах

….

тип имяn: длина в битах

};

При этом тип может быть только целым (int).


Лекция 5.

 

Пример, иллюстрирующий доступ к каждому биту числа:

#include<iostream.h>

void bin(unsigned char ch)

{

/* union объединение – специальная структура, которая хранит элементы в разделяемом адресном пространстве. Размером объединения является размер его наибольшего элемента. Доступ к элементам осуществляется через точку.*/

union

{

unsigned char cc;

struct

{

unsigned a0:1;

unsigned a1:1;

unsigned a2:1;

unsigned a3:1;

unsigned a4:1;

unsigned a5:1;

unsigned a6:1;

unsigned a7:1;

} byte;

}cod;

cod.cc=ch;

// вывод значения каждого бита числа

cout<<" номера битов 7 6 5 4 3 2 1 0";

cout<<" значения битов ";

cout<<cod.byte.a7<<" "; cout<<cod.byte.a6<<" ";

cout<<cod.byte.a5<<" "; cout<<cod.byte.a4<<" ";

cout<<cod.byte.a3<<" "; cout<<cod.byte.a2<<" ";

cout<<cod.byte.a1<<" "; cout<<cod.byte.a0<<" ";

}

main()

{

unsigned int k, m,n;

cout<<" m=";cin>>m;

cout<<" k=";cin>>k;

n=m+k;

bin(m);// вывод кода переменной m

bin(k);

bin(n);

}

 

 

Пример вывода программы может быть таким:

m=3

k=4

номера битов 7 6 5 4 3 2 1 0

значения битов 0 0 0 0 0 0 1 1

 

номера битов 7 6 5 4 3 2 1 0

значения битов 0 0 0 0 0 1 0 0

 

номера битов 7 6 5 4 3 2 1 0

значения битов 0 0 0 0 0 1 1 1

 

Задание для самоконтроля:

 

Определить, что выведется на экран в результате выполнения программы:

#include <iostream.h>

main()

{

int i,j,k;

char ii,kk;

ii=i=4;

j=7;

k=j&i;

cout<<" ";

cout<<j<<" и "<<i<<"= "<<k;

k=j|i;

cout<<" ";

cout<<j<<" или "<<i<<"= "<<k;

k=j^i;

cout<<" ";

cout<<j<<" исключающее или "<<i<<"= "<<k;

k=i<<2;

cout<<" ";

cout<<int(i)<<" сдвиг влево на 2 = "<<int(k);

k=j>>2;

cout<<" "<<j<<" сдвиг вправо на 2 = "<<k;

kk=ii<<5;

cout<<" "<<int(ii)<<" сдвиг влево на 5 = "<<int(kk);

kk=ii<<6;

cout<<" "<<int(ii)<<" сдвиг влево на 6 = "<<int(kk);

}

 

 


– Конец работы –

Эта тема принадлежит разделу:

Лекция 1. Объектно-ориентированное программирование – это новый подход к программированию. Объектно- ориентированные языки обладают свойством

ВВЕДЕНИЕ... Приступая к изучению более сложных конструкций языка С следует прежде всего повторить тот материал который был...

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Доступ к отдельному биту.

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

Имя_объекта.имя_элемента
x1.real=dim[3].real=1.45;   Класс может иметь столько объектов сколько необходимо, так же как и любая функция. Объекты могут быть любого тип

Имя объекта.имя функции();
Пример: #include<iostream.h> class rec { private: double len; double wid; public: double Len(){ return len/100;}

Наследование.
  В объектно- ориентированном программировании на основе уже существующих классов можно строить производные классы. Наследование означает, что производный класс, который называется кл

Директивы препроцессора.
  Препроцессор(макропроцессор) - это составная часть стандартного пакета языка Си, которая обрабатывает исходный текст программы до того, как он пройдет через компиля

Включение файлов.
  Директива #include включает в текст программы содержимое указанного файла. Эта директива имеет две формы:   #include "имя файла&

Условная компиляция.
  Условные конструкции препроцессора позволяют компилировать или пропускать часть программы в зависимости от выполнения некоторого условия. Условие может принимать одну из описываемых

ВНУТРЕННЕЕ ПРЕДСТАВЛЕНИЕ ЦЕЛЫХ ТИПОВ ДАННЫХ.
  Беззнаковые данные хранятся в оперативной памяти просто, чтобы узнать какое число хранится в данном байте или в слове необходимо выписать значения всех его битов и считать, что это

Аргументы функции main()
  Функция main, с которой начинается выполнение программы на языке СИ, может быть определена с параметрами, которые передаются из внешнего окружения, например, из командной строки. Во

Область действия и область видимости переменных.
  В языке C++ каждая функция это отдельный блок программы. Попасть в тело функции можно только с помощью вызова данной функции, то есть нельзя оператором безусловного перехода goto пе

Модификаторы переменных.
  В языке C++ имеется несколько модификаторов которые изменяют область действия и время жизни переменных     Модификаторы &nb

Модификатор тип_переменной имя_переменной
Все переменные в программе характеризуются не только типом, но и классом памяти. В языке Си существует четыре класса памяти: автоматический (automatic), регистровый(registe

Время жизни переменных.
  Если программист не указал иного, то объект создается, когда встречается его описание, и уничтожается, когда его имя выходит из области видимости, Объекты с глобальными именами созд

ПЕРЕГРУЖЕННЫЕ ФУНКЦИИ.
  Перегрузкой называют практику придания функции более чем одного значения. Этот термин означает, что в коде программы существует две различные по содержанию, но одинаковые по названи

ФУНКЦИИ С ПЕРЕМЕННЫМ ЧИСЛОМ ПАРАМЕТРОВ.
  При вызове функции с переменным числом параметров в вызове этой функции задается любое требуемое число аргументов. В объявлении и определении такой функции переменное число аргумент

УКАЗАТЕЛЬ НА ФУНКЦИЮ.
  Основными характеристиками функции является тип возвращаемого значения и список типов формальных параметров. Подобно тому, как имена переменных никаким образом не влияют на их тип,

Начальные установки графики.
  Перед началом работы с графикой, используется функция initgraph(), которая инициализирует графическую систему загружает графический драйвер и переводит систему в графический режим.

Функция line().
  Функция line() - вычерчивает линию между двумя заданными точками принадлежит библиотеке graphics.h Общий вид вызова: void line(int x1, int y1, int x2, int

Функция lineto().
  Функция lineto() чертит линию от текущей позиции курсора в точку с координатами (x,y)Расположена в библиотеке graphics.h Общий вид вызова функции: void li

Функция circle().
  Функция circle() вычерчивает окружность заданного радиуса из заданного центра. Функция находится в графической библиотеке graphics.h В качестве параметров передаются коорди

Функция rectangle ()
  Назначение функции rectangle () в вычерчивании прямоугольника. Функция rectangle () вычерчивает прямоугольник, используя при этом текущие тип линии, толщину и цвет

ФОРМАТИРОВАННЫЙ ПОТОКОВЫЙ ВВОД-ВЫВОД.
  В примерах программ рассмотренных выше, использовались операции помещения в поток << , например в стандартный поток вывода cout и операцией извлечения из потока >>, прим

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги