Подання цифрової інформації на комп’ютері
n Вся інформація в пам'яті ЕОМ подається у форміцифрового двійкового коду
n Кількість інформації, що міститься в один елемент пам'яті (0 або 1) називаєтьсябітом
n8 біт становить 1 байт
n Послідовність біт, що розглядаються апаратною частиною ЕОМ як єдине ціле називаєтьсямашинним словом
Комп'ютер може обробляти дані, які представлені у спеціальному вигляді – лише за допомогою нулів та одиниць. Кожен 0 чи 1 називають бітом. Один біт - це мінімальна одиниця інформації, що описує лише 2 можливі стани. Вісім бітів поєднуються в байт: 00101011, 00000000, 11111111, 10101010. Байт - основна одиниця представлення інформації в комп'ютері. У результаті вся інформація в комп'ютері представляється як набір великого (сотні тисяч та мільйони) числа нулів та одиниць, розбитих на окремі байти. Таке подання інформації називають цифровим чи двійковим. Обробка двійкових даних виконується за допомогою спеціальних правил, що визначаються так званою двійковою арифметикою.
Залежно від розв'язуваної задачі байт може містити закодоване уявлення різних типів даних.
Найпростішим та історично першим є кодування цілих чисел. Цілі числа подаються у двійковому вигляді таким чином:
Діапазон цілих чисел, що кодуються одним байтом, визначається числом можливих комбінацій із восьми нулів та одиниць. Це дорівнює 28, тобто. 256. Якщо треба закодувати число більше 255, то два байти об'єднуються разом і використовується 16 бітів. Це дає 216, тобто. 65536 комбінацій. Ще більші цілі числа можна за допомогою 4 байтів чи 32 бітів. Для представлення чисел зі знаком один біт приділяється під знак.
Більш складне уявлення існує для речових (не цілих) чисел, і обробка таких чисел значно складніше комп'ютера.
В ЕОМ використовуються три види чисел: з фіксованою точкою (комою), з плаваючою точкою (комою) і двійково-десяткове уявлення. Крапка (кома) - це мається на увазі межа цілої і дробової частин числа.
У чисел з фіксованою точкою в двійковому форматі передбачається строго певне місце точки (ком). Зазвичай це місце визначається або перед першою цифрою числа, або після останньої цифрою числа. Якщо точка фіксується перед першою цифрою, то це означає, що число по модулю менше одиниці. Діапазон зміни значень чисел визначається нерівністю
Якщо точка фіксується після останньої цифри, то це означає, що п-розрядні двійкові числа є цілими. Діапазон зміни їх значень складає:
Перед найстаршим із можливих розрядів двійкового числа фіксується його знак. Позитивні числа мають нульове значення знакового розряду, негативні – поодинокі.
Інший формою представлення чисел є їх у вигляді чисел з плаваючою точкою (комою). Числа з плаваючою точкою представляються як мантиси ma і порядку рa , іноді це уявлення називають полулогарифмической формою числа. Наприклад, число A10 = 373 можна подати у вигляді 0.373 • 10 3 , при цьому т = 0.373, р = 3, основа системи числення мається на увазі фіксованим і рівним десяти. Для двійкових чисел А2 у цьому поданні також формується та і порядок рa на підставі системи числення рівним двом.
що відповідає запису
Порядок числа рa визначає положення точки (ком) у двійковому числі. Значення порядку лежить у діапазоні – max
16. Оператори мови С/С++.
Оператори керують процесом виконання програми. Набір операторів мови C++ містить усі керуючі конструкції структурного програмування.
Складовий оператор обмежується фігурними дужками. Усі інші оператори закінчуються крапкою з комою.
Порожній оператор – це оператор, який складається лише з точки з комою. Він може з'явитись у будь-якому місці програми, де по синтаксису потрібен оператор. Виконання порожнього оператора не змінює стану програми.
Дія складового оператора полягає в послідовному виконанні операторів, що містяться в ньому, за винятком тих випадків, коли який-небудь оператор явно передає управління в інше місце програми.
Оператор обробки винятків
Оператор-перемикач призначений вибору одного з кількох альтернативних шляхів виконання програми. Обчислення оператора-перемикача починається з обчислення , після чого управління передається , поміченим , рівним обчисленим значенням . Вихід із оператора-перемикача здійснюється оператором break. Якщо значення не дорівнює жодному , то керування передається , позначеному ключовим словом default, якщо він є.
Оператор циклу з передумовою
Оператор циклу з постумовою
У мові C++ цей оператор відрізняється від класичної реалізації циклу з тим, що при істинності відбувається продовження роботи циклу, а не вихід з циклу.
Оператор покрокового циклу
Тіло оператора for виконується до того часу, поки стане хибним (рівним 0). і зазвичай використовуються для ініціалізації та модифікації параметрів циклу та інших значень. обчислюється один раз до першої перевірки, а обчислюється після кожного виконання. Будь-який із трьох виразів заголовкациклу, і навіть всі три можуть бути опущені (не забувайте лише залишати крапки з комою). Якщо опущено, воно вважається істинним, і цикл стає нескінченним.
Оператор покрокового циклу у мові C++ є гнучкою і зручною конструкцією, тому оператор циклу з передумовою while використовують у мові C++ дуже рідко, т.к. Найчастіше зручніше користуватися оператором for.
Оператор розриву перериває виконання операторів while, do, for та switch. Він може утримуватися лише у тілі цих операторів. Керування передається оператору програми, що йде за перерваним. Якщо оператор розриву записаний всередині вкладених операторів while, do, for, switch, він завершує лише оператор, що його безпосередньо охоплює.
Оператор продовження передає управління наступну ітерацію в операторах циклу while, do, for. Він може утримуватися лише у тілі цих операторів. У операторах do і while наступна ітерація починається з обчислення умовного висловлювання. В операторі for наступна ітерація починається з обчислення виразу збільшення, а потім відбувається обчислення умовного виразу.
Оператора повернення закінчує виконання функції, в якій він міститься, і повертає управління в функцію, що викликає. Управління передається в точку виклику функції, що безпосередньо слідує за оператором дзвінка. Значення , якщо вона задано, обчислюється, приводиться до типу, оголошеного функції, що містить оператор повернення, і повертається в функцію, що викликає. Якщо опущено, то значення, що повертається функцією, не визначено.
З формальної точки зору оператори break, continue та return не є операторами структурного програмування. Однак їх використання в обмежених кількостях виправдане, коли вони спрощують розуміння програми тадозволяють уникати великих вкладених структур. Наприклад, ми перевіряємо вхідні дані на аномалії. Якщо не використовувати ці оператори, всю обробку доведеться вкласти в умовний блок, що погіршує читабельність програми. Натомість можна написати невеликий умовний блок, який організує вихід із функції при невірних вихідних даних.
Введення/виведення не є частиною мови C++, а здійснюється функціями, що входять до складу стандартної бібліотеки. Для детальної інформації.