Архитектура ЭВМ и язык ассемблера

Slides:



Advertisements
Similar presentations
Computer Codes Rohit Khokher. Computer Codes Data types NumericNonnumeric IntegerRealAlphabet A, B, C, …,Z a, b, c,…,z Digits 0,…,9 Special Characters.
Advertisements

НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ
ICS312 Set 2 Representation of Numbers and Characters.
Company LOGO Edit your slogan here DKT 122/3 DIGITAL SYSTEM 1 WEEK #3 NUMBER SYSTEMS, OPERATION & CODES (PART 2)
©1999 Addison Wesley Longman2.1 A Bit About Bits A bit (binary digit) –is the smallest unit of information –can have two values - 1 and 0. Binary digits,
Астрометрические каталоги К.В.Куимов, ГАИШ МГУ. Определение астрометрического каталога Астрометрический каталог – понятие неопределённое. Например, это.
Нормы МОТ по установлению минимальной заработной платы Конвенция МОТ №131 Шинго МИЯКЕ Департамент международных норм в сфере труда.
« Использование двоичной системы счисления при составлении генеалогического дерева». Автор: Вербицкий Евгений Ученик МОУ «Лицей» 7 г класса.
Chapter 2 : Number System
Системы отбора. Условные обозначения (1) (2) (3) (4) (5) (6) (7) Математическое моделирование процессов отбора2.
Некомпенсаторное агрегирование и рейтингование студентов Авторы: Гончаров Алексей Александрович, Чистяков Вячеслав Васильевич. НФ ГУ ВШЭ 2010 год.
Скриптовые языки на примере Perl. Языки программирования Скриптовые Программа (или ее бай-код) интерпретируется Зачастую более высокий уровень абстрагирования.
1 СПбГУ ИТМО, кафедра Компьютерных Технологий ПРИМЕНЕНИЕ АВТОМАТНОГО ПРОГРАММИРОВАНИЯ ДЛЯ ПОСТРОЕНИЯ СИСТЕМ УПРАВЛЕНИЯ БИЗНЕС- ПРОЦЕССАМИ Евгений Андреевич.
Разработка программного обеспечения (Software Engineering) Часть 2. Создание ПО.
Введение в параллельные вычисления. Технология программирования MPI (день седьмой) Антонов Александр Сергеевич, к.ф.-м.н., н.с. лаборатории Параллельных.
Москва 2008 Специализированное вычислительное устройство для обработки радиолокационной информации Московский физико-технический институтИнститут точной.
1 Организация вычислительной системы ЛЕКЦИЯ №2 Калинина А.П.
Лекция 2 Наборы из нулей и единиц
PHP как язык программирования. Типы данных логические величины int, integer – целые числа real, double, float – вещественные числа string – строки array.
"The European Molecular Biology Open Software Suite"
Понятие архитектуры ЭВМ Архитектура ЭВМ как распределение функций, реализуемых системой, между её уровнями.
Симулятор квантовых вычислений Выполнил: Гедерцев А.С. Руководитель, д.ф.-м.н., профессор: Граничин О.Н.
Синтаксис языка Java.
Санкт-Петербургский Государственный Университет Математико-Механический факультет Кафедра системного программирования Применение диаграмм двоичных решений.
Swiss-Prot – одна из первых баз данных белковых последовательностей, “gold standard” белковой аннотации. Аннотация выполнена вручную группой профессиональных.
МОУ Покровская улусная многопрофильная гимназия МР «Хангаласский улус» Республики Саха (Якутия) (am)n(am)n(am)n(am)n amamamam в -2 a1a1a1a1.
Тема доклада: Интерфейс RapidIO Докладчик: Богданов Андрей Юрьевич ЗАО «МЦСТ» Отдел «Архитектура рабочих станций»
Объектно-ориентированное проектирование DSP-систем в телекоммуникациях Подготовил: Сергеев Виктор Николаевич СПбГУ, математико-механический Факультет,
Демидов А.В г. Операционные системы Лекция 4 Работа с файлами.
DSP Лекция 1 Digital Signal Processing (часть 2).
Data Representation ICS 233
0 + 0= = = = 10 Арифметические операции во всех позиционных системах счисления выполняются по одним и тем же хорошо известным вам правилам.
9 октября 2004 Поиск статических изображений по содержанию: использование текстового запроса Наталья Васильева
Optimization of applications for Intel* platforms 1 IA64. Архитектура и обзор системы команд Юрий Долгов, Дмитрий Шкурко.
Проверка эквивалентности срединной и линейной осей многоугольника Дипломная работа студента 545 группы Подколзина Максима Валериевича Санкт-Петербургский.
Number Systems and Codes Discussion D4.1. Number Systems Counting in Binary Positional Notation Hexadecimal Numbers Negative Numbers.
___________________________ Грязнов В.Б. Директор по Информационным технологиям ОАО «Мосэнерго»
Bits, Bytes, KiloBytes, MegaBytes, GigaBytes & TeraBytes.
EKT 121 / 4 ELEKTRONIK DIGIT 1 CHAPTER 1 : INTRODUCTION.
Binary Arithmetic & Data representation
ICS312 Set 1 Representation of Numbers and Characters.
CPS120: Introduction to Computer Science Computer Math: Converting to Decimal.
Язык программирования C#
1 Организация подсистемы ввода-вывода CSS (Channel Subsystem) Лекция № 9.
ACOE2511 Assembly Language for the 80X86/Pentium Intel Microprocessors Lecturer: Dr. Konstantinos Tatas.
Introduction to Microprocessors Chapter 2. Decimal or Base 10 Numbers  Have ten different digits (0-9)  It is a weighted number system. Each position.
SAK Chapter 21 Chapter 2 : Number System 2.1 Decimal, Binary, Octal and Hexadecimal Numbers 2.2 Relation between binary number system with other.
School of Computer and Communication Engineering, UniMAP Mohd ridzuan mohd nor DKT 122/3 - DIGITAL SYSTEM I Chapter.
Микропроцессорные системы Программирование INTEL 8086 Системная программа Debug.
Chapter Two Hardware Basics: Inside the Box ©1999 Addison Wesley Longman2.2 Chapter Outline What Computers Do A Bit About Bits The Computer’s Core: CPU.
Character representation in the computers Home Assignment 1 Assigned. Deadline 2016 January 24th, Sunday.
МОДЕРНИЗАЦИЯ СТРУКТУРЫ БИБЛИОТЕКИ ВУЗА Мандроги- 18 июня 2009 года Корпоративные библиотечные системы: технологии и инновации.
Computer Data Formats Microprocessor Course Electrical Engineering Department University of Indonesia.
Chapter 1 Representing Data in a Computer. 1.1 Binary and Hexadecimal Numbers.
ABCDEF 00 NULSOHSTXETXEOTENQACKBELBSHTLFVTFFCRSOSI 10 DLEDC1DC2DC3DC4NAKSYNETBCANEMSUBESCFSGSRSUS 20SP!"#$%&'()*+,-./ :;?
11001 / 101, / ) Perform subtraction on the given unsigned binary numbers using the 2's complement of the subtrahend. Where the result.
Lecture Coding Schemes. Representing Data English language uses 26 symbols to represent an idea Different sets of bit patterns have been designed to represent.
Unit 18: Computational Thinking
11001 / 101 , / ) Perform subtraction on the given unsigned binary numbers using the 2's complement of the subtrahend. Where the.
CHAPTER 1 : INTRODUCTION
Data Transfer ASCII FILES.
1.11, 1.12, 1.13, 1.14, 1.18, 1.20, 1.23, 1.24, 1.25, 1.32, 1.33 ( 47 )8 = ( )2 ( 47 )16 = ( )2 ( 20 )10.
Number Systems.
Computers & Programming Languages
אבני היסוד של תוכנית ב- C++
אבני היסוד של תוכנית ב- C++
Table 1.1 Powers of Two.
Сортировка, поиск и фильтрация данных в базе данных и выборках
FIGURE 1-1 Examples of Voltage Ranges and Waveforms for Binary Signals
Computer Architecture CST 250
Presentation transcript:

Архитектура ЭВМ и язык ассемблера Программировать – значит понимать. Кристин Нюгард Архитектура ЭВМ и язык ассемблера Коротин Павел Николаевич

Преимущества Языков Высокого Уровня: Приближены к естественному языку Большая производительность труда Переносимые программы Специализация

Ассемблер – язык описания архитектуры ЭВМ Архитектура ЭВМ есть функциональный образ вычислительной системы, получа-емый непосредственным пользователем, её абстрактное представление, которое отражает её концептуальную структуру и логическую организацию.

Реализация Структура элементной базы или средства и методы функционирования машин не входят в сферу понятия «архитектура ЭВМ» и обозначаются термином «реализация».

Поколения ЭВМ По развитию програм-много обеспечения: Ассемблер ЯВУ ОС ППП По используемой элементной базе: Лампы Транзисторы ИС Микропроцессоры

Принципы фон-Неймана принцип хранимой программы бинарная арифметика линейное пространство памяти последовательное выполнение команд безразличие к целевому назначению данных

Джон фон Нейман «Предварительный доклад о машине ЭДВАК»

Представление чисел в ЭВМ Системы счисления - набор правил для записи чисел совокупностью символов (цифр) Представление чисел в ЭВМ

Римская система счисления MMIV = 2004 MCMXCIX = 1999 MIM Буква Цифра I 1 V 5 X 10 L 50 C 100 D 500 M 1000 MMMMMM = 6000

Позиционные системы счисления Основание системы счисления – количество цифр, используемых для записи числа. Разряд – положение цифры в записи числа. Младший разряд – самая правая цифра. Старший разряд – самая левая цифра.

где 0ak<b для всех k  [n,-) (anan-1…a1a0.a-1 a -2…)b = an*bn + an-1*bn-1 + … + a1*b + a0 + a-1*b-1 + a-2*b-2 + …, где 0ak<b для всех k  [n,-)

Десятичная Двоичная Восьмеричная Шестнадцатеричная 1 0001 01 2 0010 02 3 0011 03 4 0100 04 5 0101 05 6 0110 06 7 0111 07 8 1000 10 9 1001 11 1010 12 A 1011 13 B 1100 14 C 1101 15 D 1110 16 E 1111 17 F

Перевод чисел из одной системы счисления в другую ABCD16=10*163+11*162+12*161+13= 4398110 200410 = 125*16+4 = (7*16+D)*16+410 = 7D416 7D416 = 0111 1101 01002 = 011 111 010 1002 = = 37248

(ck*bk-p*n + … + cp*n)*bp*n + … (ck…c1c0)b = (ck*bk-p*n + … + cp*n)*bp*n + … …+ (c2n-1*bn-1+…+cn+1*b+cn)*bn + + (cn-1*bn-1+…+c1*b+c0) = = Cp*ap + … + C1*a + C0 = (Cp…C1C0)a здесь a = bn и p = k mod n

Графическое представление натуральных чисел 0 1 … 254 255 1111 11112 = FF16 = 15*16+15 = 25510 255 0 1 - для 8 двоичных символов

Представление отрицательных чисел путем простого выделения бита под знак числа 0******* - положительное число 1******* - отрицательное число Результат: 00000000 = +0 10000000 = -0 путем записи в дополнительном коде: x+(-x)=0

Представление отрицательных чисел ограниченным числом разрядов 255 0 1 25510 = 111111112 = -110 12710 = 011111112 -1 0 -127 -128 129 128 127 100000002 = +12810 = -?10

Дополнительный код (= обратный  1) Прямой код Десятичное Обратный код Дополнительный код (= обратный  1) без знака со знаком 11111111 255 -1 11111110 254 -2 … 10000001 129 -127 10000000 128 -128 01111111 127 +127 00000010 2 +2 11111101 00000001 1 +1 00000000

Байт – минимальный адресуемый участок памяти Номер 7 6 5 4 3 2 1 Бит * Слово Биты 7 6 5 4 3 2 1 Байт старший младший Двойное слово Слова старшее младшее

Интервалы представления натуральных чисел Тип памяти К-во бит Возможные значения Unsigned byte 8 От 0 до 255 Unsigned word 16 От 0 до 65 535 Unsigned double word 32 От 0 до 4 294 967 295 Unsigned quad word 64 От 0 до 18 446 744 073 709 551 615 Квинтиллионы Квадриллионы Триллионы Биллионы

Интервалы представления целых чисел Тип памяти К-во бит Возможные значения Signed byte 8 От -128 до 127 Signed word 16 От –32 768 до 32 767 Signed double word 32 От –2 147 483 648 до 2 147 483 647 Signed quad word 64 От –9 223 372 036 854 775 808 до 9 223 372 036 854 775 807

BCD - binary coded decimal Упакованный формат Биты 7 6 5 4 3 2 1 5910 = Неупакованный формат Биты 7 6 5 4 3 2 1 5910 =

ASCII - American National Standard Code for Information Interchange   1 2 3 4 5 6 7 8 9 a b c d e f 00 nul soh stx etx eot enq ack bel bs ht nl vt np cr so si 10 dle dcl dc2 dc3 dc4 nak syn etb can em sub esc fs gs rs us 20 sp ! " # $ % & ' ( ) * + , - . / 30 : ; < = > ? 40 @ A B C D E F G H I J K L M N O 50 P Q R S T U V W X Y Z [ \ ] ^ _ 60 ` g h j k l m n o 70 p q r s t u v w x y z { | } ~ del

Представление вещественных чисел С фиксированной точкой:  = 3.1415926536 С плавающей точкой: 0.31415926536·10+1 ± m E ± p , pN В десятичной системе: 110<m≤0.110, Е=10 В двоичной системе: 12<m ≤0.12=0.510, E=2 (m = 0 только для нуля)

Представление вещественных чисел в ЭВМ на базе процессора INTEL 12 ≤ m<102 Знак числа Порядок Смещение порядка Мантисса Короткое 31 30-23 127 22-0 Длинное 63 62-52 1023 51-0 Расширенное 79 78-64 16383 63-0 -1.010 = -1.0e02= 1 01111111 000…2 = BF80000016 5.2510=101.012=+1.0101е+102=0 10000001 010100…2=40A8000016

Определение числа разрядов мантиссы вещественного числа в Паскале program test; var a,c:real; i:integer; begin a:=1.0; c:=0.5; i:=0; repeat a:=a+c; c:=c*0.5; i:=i+1 until a=a+c; writeln('Число разрядов мантиссы - ',i) end.

2-я (показатель степени 10-й в целях экономии места) a c …e0 10-я 2-я (показатель степени 10-й в целях экономии места) a c В нормализованном формате …e0 an cn an+1 cn+1 1.0 .5 1.0e0 1.e-1 1.000 .1000 1.1e0 1.e-2 1.5 .25 1.100 .0100 1.11e0 1.e-3 1.75 .125 1.110 .0010 1.111e0 1.e-4 1.875 .0625 1.111 .0001 1.1111e0 1.e-5

a c Новое a 00000000 + 10000000  10000000 I=1 10000000 + 01000000  11000000 I=2 11000000 + 00100000  11100000 I=3 11100000 + 00010000  11110000 I=4 11110000 + 00001000  11111000 I=5 11111000 + 00000100  11111100 I=6 11111100 + 00000010  11111110 I=7 11111110 + 00000001  11111111 I=8 11111111 + 000000001  111111111

Литература: Д. Кнут «Искусство программирования». Т.2 К. Хамахер, З. Вранешич, С. Заки «Организация ЭВМ». Э. Таненбаум «Архитектура компьютера». K. Miller «An assembly language introduction to computer architecture» N-Y. Oxford University Press, 1999.