Студопедия

КАТЕГОРИИ:

АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника


Формати числових даних




Видавництво Coppenrath Verlag (Коппенрат Ферлаг) – http://www.coppenrath.de – велике німецьке видавництво, яке займається дитячою літературою. Засноване у 1768 р. Йозефом Генрихом Коппенратом, зараз ним володіє Вольфганг Хьолькер. Слоганом Coppenrath Verlag вважається: «Я повинен пишатися своєю книгою, яку я зробив!»

Компанія перебувала більше двох століть, у розпорядженні сім'ї Коппентратів, поки її не придбав в 1977 р. молодий художник-графік і видавець Вольфганг Хьолькер. Це дозволило компанії додати до своїх традицій новаторські ідеї, важливі стимули і привело її до якісно нового рівня та визнання. Провідним напрямком видавничої програми є дітячі видання, а також подарункові. А так, як книги для дітей складні у створені, потребують особливої уваги, щоб мати виняткову привабливість, то й підходи до творення книг тут особливі. Графічні якості включають в себе особливу привабливість.

Частина продукції виходить також під марками «Hölker Verlag» (Хьолькер Ферлаг) і «Die Spiegelburg» (Ді Шпайгельбург – Дзеркальний Замок). Під маркою «Die Spiegelburg» випускається широкий спектр продукції, пов’язаної з книжковими казковими героями цього видавництва — подарунки, шкільне приладдя, меблі, текстиль, іграшки. Це просуває книжки і заодно дає додатковий підробіток.

Це видавництво має надзвичайно гарні ніжні ілюстраці, принайні в тих книжках, які є зразками на цьому оглядовому сайті. Сам сайт теж в героях книжок – вони живуть тут (як фон).

Сайт самого ж видавництва дуже простий для користування, що ним можуть користуватись і самі діти. Одна з реклам, що там була розміщена – реклама «Мамусиної книги» («Das Mami Buch»), банер міняється плавно, на екрані падає сніжок.

На сайті цього видавництва є окремий сайт їхнього бестселера «Принцеса Лілліфея» (Prinzessin Lillifee). На сайті є розклад презентацій нової частини пригод дівчинки у різних книгарнях Німеччини. Є музика. Видавництво випускає супутні до книжок товари з цією героїнею. Такі автори як Анетта Ланген, Моніка Фінстербуш, та їх герої Фелікс, Принцеса Ліліфея, Капітан Шаркі, книжки про яких випустило видавництво, стали улюбленими героями європейської дитячої літератури.

В Росії книжки видавництва «Coppenrath» видає «Росмэн» разом з компанією «PEI-Consult» в Москві. В 2007 р. була видана перша книжка «Принцеса Ліліфея».

15.3. «Рожевий жираф»

Перше в Росії видавництво, в якому головними експертами є діти і їх батьки. Вибираючи книги для видання, видавництво орієнтується на думку і смак дітей, адже вони заслуговують на беззастережну довіру. Як виникла ідея створення такого видавництва?

У однієї мами був маленький син. Звали його Максим. Хлопчик як хлопчик, лише дуже вередливий у виборі книг. То казка не подобається, то картинки до неї, то книжка порветься на найцікавішому місці, то ще що-небудь. Були у нього, звичайно, і улюблені книги, а ось нову, яка б йому сподобалася, так складно було вибрати, що його мама інколи зовсім зневірялася. А такі вже влаштовані мами, що коли їх щось хвилює, вони діляться цим один з одним. Ось і ця мама стала скаржитися іншим мамам, і тут виявилось, що невдоволених — дуже багато.

Одна мама говорила: «Є багато книжок з прекрасним текстом, але з жахливими картинками!» Інша мама говорила: «Є багато книжок з прекрасними картинками, але з жахливим текстом!» Третя мама говорила: «Є багато хороших книжок, які я любила, коли була маленькою. Як би я хотіла почитати їх своїй дочці! Але купити їх неможливо, а мої — вже старі і рвані!»

А мама Макса слухала їх і думала, як би зробити так, щоб і тексти в книжках були чудові, і картинки теж, і щоб всі улюблені книжки нашого дитинства теж лежали на полицях в магазині, і щоб всі кращі іноземні книжки можна було купити російською мовою. А головне, щоб всі ці книжки сподобалися таким же вередливим дітям, як її Макс. Що тут зробиш? Лише одне!

— А давайте самі видаватимемо книжки, — сказала мама Макса, — але лише такі, які подобаються нам і нашим дітям!

— Давайте, — сказала інша мама трьох дітей, в якої діти теж часто коверзували, коли йшлося про книги.

— Спочатку ми читатимемо ці книжки своїм дітям і дітям друзів і знайомих, а потім вибиратимемо, що видавати.

— Ми покажемо нашим дітям різні ілюстрації і виберемо ті, які їм більше сподобаються.

— Адже нас так багато, і у нас багато друзів, в яких теж є діти. Ми з легкістю знайдемо маленьких експертів різного віку.

Сказано — зроблено. Так і з'явився «Рожевий жираф» — перше в Росії дитяче видавництво, в якому діти самі вибирають, які книги видавати, а які — ні.


[1] Сьогодні відомі лише 48 її примірників. 14 із них є у США, 11 — у Німеччині, 8 — у Великій Британії. У Росії зберігаються дві. Туди Біблії Ґутенберґа потрапили з Німеччини як трофей після Другої світової. Дві Біблії було втрачено під час пожежі в бібліотеці університету бельгійського міста Льове та під час бомбардування Лейпцига 1945-го. У 1974 р. Унiверситет Техасу купив примірник Біблії Ґутенберґа за $2,4 млн. 1978-го бiблiотека Вюртембергу, що в Німеччині, — за $2,2 млн. Через 10 рокiв японський унiверситет Кейо заплатив за такий примiрник $5 млн.

 

Формати числових даних

Числа, якi вводяться з клавiатури, надходять в процесор в ASCII-кодах. ASCII-код кожної десяткової цифри числа дорiвнює значенню цiєї цифри, збiльшеному на 30h.

В свою чергу, процесор дозволяє виконувати арифметичнi операції додавання, вiднiмання, множення і дiлення над цiлими числами, якi можуть зберiгатись в пам'ятi в одному iз трьох форматiв : двiйковий формат, двiйково – десятковий упакований формат і двiйково – десятковий неупакований формат.

а) Число в двiйковому форматi зберiгається в пам'ятi у виглядi одно - чи двохбайтового числа в доповняльному кодi.

б) Число в двiйково - десятковому упакованому форматi зберiгається в пам'ятi у виглядi послiдовностi байт.

Послiдовнiсть цифр в байтах природна: в молодших байтах зберiгаються старшi цифри.

В кожному байтi зберiгаються двi двiйково – кодованi десятковi цифри в кодi BCD(Binary-Coded Decimal).

Таблиця 1.1.1

«Таблиця бінарних кодів»

 

Цифра Двійковий код Цифра Двійковий код

Приклад запису 6-розрядного десяткового числа 653201 в пам'ятi в кодi BCD :

байт байт байт  
- десяткове представлення
- двійкове представлення

в) Число в двiйково - десятковому неупакованому форматi зберiгається у виглядi послiдовностi байтiв. В кожному байтi зберiгається одна двiйково - кодована десяткова цифра. Її значення мiститься в чотирьох молодших бiтах байта.

Перед виконанням операцiї множення таких чисел в старших чотирьох бiтах повиннi бути записанi нулi. Для операцiї додавання і вiднiмання змiст цих бiт не є суттєвим.

Приклад запису 3-розрядного десяткового числа 653 в пам`ятi в двiйково - десятковому неупакованому форматi:

байт байт байт  
- десяткове представлення
- двійкове представлення

 


1.2 Виконання арифметичних операцій

Процесори IBM PC мають в системi команд такi команди, якi дозволяють виконувати арифметичнi операції додавання, вiднiмання, множення і дiлення над цiлими числами в двiйковому форматi, а також в двiйково-десятковому упакованому і неупакованому форматах.

1.2.1 Арифметичні команди над двійковими числами

Для виконання додавання цiлих двiйкових чисел можуть використовуватись команди:

ADD a,b - Додавання без урахування перенесення. Команда додає значення двох операндів а та b, і розмiщує результат замiсть першого операнда. Операнд може находитися в пам'ятi, в регiстрi, або бути безпосереднiм параметром в командi. Не допускається додавання двох операндів, якi находяться в пам'ятi. Першим операндом не може бути безпосереднiй параметр. Установлюються прапорці AF, CF, OF, PF, SF, ZF.

ADC a,b - Додавання з перенесенням. Команда додає значення двох операндів, а також значення прапорця перенесення CF (a+b+CF), і розмiщує результат замiсть першого операнда. Обмеження на операнді такi ж, як і в командi ADD. Установлюються прапорці AF, CF, OF, PF, SF, ZF. Ця команда використовується для програмування арифметичних операцiй над довгими цiлими числами.

INC a - Збiльшення на 1. Команда додає 1 до значення операнда а. Операнд може находитися в пам'ятi або в регiстрi. Установлюються прапорці AF, OF, PF, SF, ZF.

Для виконання вiднiмання можуть використовуватись команди:

SUB a,b - Вiднiмання. Команда вiднiмає iз значення першого операнда а значення другого операнда b і розмiщує результат замiсть першого операнда. Операнд може находитися в пам'ятi, в регiстрi, або бути безпосереднiм параметром в командi. Не допускається вiднiмання, коли обидва операнда находяться в пам'ятi. Першим операндом не може бути безпосереднiй параметр. Установлюються прапорці AF, CF, OF, PF, SF, ZF.

SBB a,b - Вiднiмання з позикою. Команда вiднiмає iз значення першого операнда а значення другого операнда b, зменшує результат на значення прапорця CF (a-b-CF) і розмiщує результат замiсть першого операнда. Обмеження операндів такi ж, як і в командi SUB. Установлюються прапорці AF, CF, OF, PF, SF, ZF.

DEC a - Зменшування на 1. Команда зменшує значення операнда а на 1. Операнд може находитися в пам'ятi або в регiстрi. Установлюються прапорці AF, OF, PF, SF, ZF.

Для виконання множення цiлих двiйкових чисел можуть використовуватись команди:

MUL a - Множення. Команда виконує множення вмiсту акумулятора (AL або AX) на значення операнда а. Результат розмiщується, вiдповiдно, в акумуляторi AX, або в парi регiстрiв DX:AX. Множники розглядаються як числа без знакiв. Установлюються прапорці CF і OF. Прапорці AF, PF, SF і ZF не визначенi.

IMUL a - Множення iз знаком. Команда виконує множення вмiсту акумулятора (AL або AX) на значення операнда а. Результат розмiщується, вiдповiдно, в акумуляторі AX, або в парi регiстрiв DX:AX. Множники розглядаються як числа iз знаками. Прапорці CF і OF скидаються в 0, коли старша частина добутку (регiстр AH або DX) є поширенням знака, який находиться в молодшiй частинi добутку (AL або AX), iнакше цi прапорці установлюються в 1.

Для виконання дiлення цiлих двiйкових чисел можуть використовуватися команди:

DIV a - Дiлення. Команда виконує дiлення вмiсту акумулятора на операнд a. Коли операнд а - байт, тодi дiлене розмiщується в AX, цiла частина розмiщується в AL, а залишок - в AH. Коли операнд а - слово, тодi дiлене розмiщується в парi DX:AX (подвiйне слово), цiла частина розмiщується в AX, а залишок в DX. Операнди розглядаються як цiли числа без знака. При дiленнi на 0 виконується переривання типа 0.

IDIV a - Дiлення iз знаком. Команда виконує дiлення операндів також, як в командi DIV. Операнди розглядаються як числа iз знаками. Прапорці не визначенi. При дiленнi на 0 виконується переривання типа 0.

1.2.2 Арифметичні команди над двійково-десятковими неупакованими числами

Арифметичнi операції над двiйково-десятковими неупакованими числами виконуються порозрядно, починаючи з молодших розрядiв операндів.

Слiд нагадати, що для зберiгання однiєї цифри такого числа треба один байт.

Виконання операцiї над черговими розрядами операндів, тобто над черговими байтами, починається з того, що над цими байтами виконується вiдповiдна двiйкова команда додавання (ADD, ADC), вiднiмання (SUB, SBB), множення (MUL) або дiлення (DIV).

Пiсля того виконується корекцiя отриманого результату, щоб отримати правильне значення неупакованої десяткової цифри результату:

ААА- Корекцiя результату додавання. Команда коригує результат операцiї ADD. В чотирьох молодших бiтах регiстра AL записується значення десяткової цифри, а в чотирьох старших бiтах записуються нулi. Коли в AL результат попередньої операцiї перевищує 9, тодi CF=1 і AH=AH+1.

AAS- Корекцiя результату вiднiмання. Команда коригує результат операцiї SUB. В чотирьох молодших бiтах регiстра AL записується значення десяткової цифри, а в чотирьох старших бiтах записуються нулi. Коли потрiбно мати позику iз старшого розряду, тодi CF=1 і AH=AH+1.

AAM - Корекцiя в AX результату множення. Команда коригує результат операцiї MUL. В регiстрi AH записується старша цифра добутку, а в AL - молодша цифра.

AAD - Корекцiя дiлення. Команда коригує дiлене в регістрі AL перед виконанням дiлення, так що наступне дiлення DIV дає неупаковану десяткову частку: в AL - результат, в AH - нуль.

1.2.3 Арифметичні команди над двійково-десятковими упакованими числами

Арифметичнi операції над двiйково-десятковими упакованими числами виконуються по байтах, тобто задана операцiя додавання або вiднiмання виконується одночасно над двома розрядами числа, якi находяться в одному байтi, починаючи з молодших розрядів.

Виконання операцiї додавання або вiднiмання здiйснюється в два етапу. Спочатку над цим байтом виконується, вiдповiдно, команда додавання (ADD, ADC) або вiднiмання (SUB, SBB), а потiм виконується корекцiя результату, щоб отримати правильнi значення упакованих десяткових цифр.

Для корекцiї результату використовуються такi команди:

DAA - Корекцiя результату додавання. Команда коригує в AL результат операцiї ADD, ADC. В регiстрi AL створюються двi правильнi двiйково - десятковi цифри результату. Коли виникає перенесення в наступний байт, тодi CF=1.

DAS - Корекцiя результату вiднiмання. Команда коригує в AL результат операцiї SUB, SBB. В регiстрi AL створюються двi правильнi двiйково - десятковi цифри результату. Коли виникає позика iз наступного байта, тодi CF=1.

В процесорі IBM PC не передбачені команди корекції множення і ділення упакованих двiйково-десяткових чисел. Тому для виконання цих операцій треба спочатку розпакувати черговий байт, виконати відповідну операцію над не упакованими цифрами, а потім упакувати результат.



Поделиться:

Дата добавления: 2015-01-01; просмотров: 279; Мы поможем в написании вашей работы!; Нарушение авторских прав





lektsii.com - Лекции.Ком - 2014-2024 год. (0.006 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты