31909

Внутрішнє представлення цілочисельних даних в IBM РС

Лабораторная работа

Информатика, кибернетика и программирование

Виконати переклад заданих викладачем чисел з десяткової в двійкову систему числення. Дати їх внутрішнє (машинне) представлення в залежності від діапазону в знакових і беззнакових форматах типів Shortint (signed char), Byte (unsigned char), Integer (int), Word (unsigned int). Машинне представлення даних має бути дане в двійковій і шестнадцятирічній системах числення.

Украинкский

2013-09-01

58.65 KB

5 чел.

 

   Лабораторна робота № 1

Тема: Внутрішнє представлення цілочисельних даних в IBM| РС

Мета|ціль| роботи: Виконати переклад|переведення| заданих викладачем чисел з|із| десяткової в двійкову систему числення. Дати їх внутрішнє (машинне) представлення|подання| в залежності від діапазону в знакових і беззнакових форматах типів Shortint| (signed| char|), Byte| (unsigned| char|), Integer| (int|), Word| (unsigned| int|). Машинне представлення даних має бути дане в двійковій і шестнадцятирічній| системах числення.

Порядок|лад| роботи:

1) Обчислити|вичисляти| для свого варіанту цілі числа.

2) Перевести|переказувати| їх з|із| 10-річної| в 2-ву| (або 16-річну|) систему числення.

3) Отримати| їх внутрішнє представлення.|п

      4) Написати програму опису цих чисел на мові|язиці| Асемблера і отримати|одержувати| лістинг.

      5) Перевірити правильність своїх викладень.

Цілочисельні дані мають бути представлені|уявляти| у всіх можливих для платформи Winl6| (Win32|) форматах з врахуванням|з урахуванням| їх діапазону представлення|подання|.|застосування|

Варіант №8

X =± 4567, Y =± 60 № = 8. Тоді вийдуть наступні вісім цілих чисел для варіанту № = 8, а саме: 

1)

4567 + 8 =

4575

2)

4567 - 8 =

4559

3)

-4567 + 8 =

- 4559

4)

-4567 - 8 =

- 4575

5)

60 + 8  =

68

6)

60 - 8 =

52

7)

-60 + 8 =

-52

8)

-60 - 8 =

-68

Рішення:|вирішення|

Для переводу|переведення| цілого числа, представленого|уявляти| в десятковій системі числення, в систему числення з|із| основою|заснуванням| q необхідно дане число ділити на основу|заснування| до отримання цілого залишку|остачі|, меншого q. Отриману|одержувати| частку знову необхідно ділити на основу|заснування| до отримання|отримання| цілого залишку|остачі|, меншого q, і так далі до тих пір, поки остання частка буде менше q. Число в системі числення з|із| основою|заснуванням| q представиться у вигляді впорядкованої послідовності залишків ділення|поділки| в порядку|ладі|, зворотному їх отриманню|отриманню|. До того ж старша цифра числа дає останній залишок|остача|, а молодша —-| перший.

Для того, щоб змінити|позмінювати| знак числа, потрібно інвертувати всі його біти і додати до нього одиницю — отримаємо|одержуватимемо| представлення негативного|заперечного| числа в додатковому коді.

Для цілих типів із|із| знаком, під знак відводиться старший біт, до того ж для позитивних чисел він дорівнює 0, а для негативних|заперечних| — 1.

Цілочисельні   типи,   їх  діапазони   значень   і   кількість   потрібної   для   них   пам'яті приведені в наступній|слідуючій| таблиці:

Тип

Диапазон значений

Требуемая память

Byte

0..255

1 byte

Shortint

-128.. 127

1 byte

Word

0..65 535

2 bytes

Integer

-32 768..32 767

2 bytes

Longint

-2 147 483 648..2 147 483 647

4 bytes

Протокол перекладу|переведення| чисел

Спочатку переведемо|переказуватимемо| задані числа в двійкову систему числення, а потім дамо їх внутрішнє представлення|подання|.

68

2

68

34

2

0

34

17

2

0

16

8

2

1

8

4

2

0

4

2

0

68d => 0100 0100b (BYTE)

-68d =>0100 0100b -двійковий код числа |-68|

      1011 1011b - інверсія

      +________1

       1011 1111b – додатковий код  

52

2

52

26

2

0

26

13

2

0

12

6

2

1

6

3

2

0

2

1

1

52d =>  0011 0100b (BYTE)

-52d => 0011 0100b -двійковий код числа |-52|

       1100 1011b - інверсія

      +________1

       1100 1111b – додатковий код  

4575

2

4574

2292

2

1

2292

1146

2

0

1146

573

2

0

572

286

2

1

286

143

2

0

142

71

2

1

70

35

2

1

34

17

2

1

16

8

2

1

8

4

2

0

4

2

2

0

2

1

0

4575d => 0001 0001 1110 1001b (WORD)

-4575d => 0001 0001 1110 1001b -двійковий код числа |-4575|

          1110 1110 0001 0110b - інверсія

         +__________________1

          1110 1110 0001 0111b – додатковий код  

4559

2

4548

2274

2

1

2274

1137

2

0

1136

568

2

1

568

284

2

0

284

142

2

0

142

71

2

0

70

35

2

1

34

17

2

1

16

8

2

1

8

4

2

0

4

2

2

0

2

1

0

4559d => 0001 0001 1100 0101b (WORD)

-4559d => 0001 0001 1100 0101b -двійковий код числа |-4559|

          1110 1110 0011 1010b - інверсія

         +__________________1

          1110 1110 0011 1011b – додатковий код  

        Byte

              Word

     Bin

 ex

           Bin

 Hex

68

0101 0000

     50

0000  0000  0101  0000

    0050

-68

1011 0000

     B0

1111  1111  1010  0000

    FFB0

52

0010 1000

     28

0000  0000  0010  1000

     0028

-52

1101 1000

     D8

1111  1111  1101  1000

     FFD8

4575

0001  0001  1110  1011

     11EB

-4575

1110  1110  0001  0101

      EE15

4559

0001  0001  1100  0011

      11C3

-4559

1110  1110  0011  1101

      EE3D

Машинное представление заданных чисел.

Зробимо перевірку, для цього напишемо програму, відкомпілюємо її за допомогою компілятора з мови|язика| асемблера MASM| і отримаємо|одержуватимемо| файл лістингу:

;Файл Асемблер.asm

title Labor_2

.MODEL tiny

.DATA

;----------byte------------------

Ib          byte  68

            byte  52

;----------word-----------------

Iw          word  68

word  52

word  4575

word  4575

;-----------shortint------------

is byte  -68

byte  -52

;-----------integer------------

ii word  -68

word  -52

word  -4575

word  -4559

;----------longint-----------

il            dword  4575

dword  4559

dword  -4575

dword  -4559

END

Microsoft(R) Macro Assembler Version 6.15.8803                               15/10/10   18:44:16

Labor_2                                                                   Page 1 – 1

       

                                                       ;Файл Асемблер.asm

                                                                   title Labor_2

                                                                  .MODEL tiny

0000                                                           .DATA                                                                   ;----------byte------------------

0000  50                                                     Ib          byte  68

0001  28                                                                  byte  52

                                                                  ;----------word-----------------

0002  0050                                                 Iw          word  68

0004  0028                                                               word  52

0006  11EB                                                              word  4575

0008  11C3                                                              word  4559

                                                                  ;-----------shortint------------

000A   B0                                                    is   byte  -68

000B   D8                                                               byte  -52

                                                                  ;-----------integer------------

000C  FFB0                                                ii  word  -68

000E  FFD8                                                           word  -52

0010  EE15                                                            word  -4575

0012  EE3D                                                            word  -4559

                                                                  ;----------longint-----------

0014  000011EB                                         il         dword  4575

0018  000011C3                                                    dword  4559

001C  FFFFEE15                  .                               dword  -4575

0020  FFFFEE3D                                                  dword  -4559

                                                                  END


 

А также другие работы, которые могут Вас заинтересовать

63177. Виникнення рільництва і скотарства 25.23 KB
  Очікувані результати: Після цього уроку учні зможуть: називати хронологічні межі палеоліту неоліту енеоліту та часів бронзового віку; основні заняття людей за різних періодів первісного суспільства...
63178. СУСПІЛЬНИЙ УСТРІЙ ТА ГОСПОДАРСЬКЕ ЖИТТЯ КИЇВСЬКОЇ РУСІ У ІХ-Х СТ 29.38 KB
  Мета: висвітлити суть і значення розквіту Київської Русі у IX XI ст. ознайомити із соціальним та господарським життям Київської Русі розкрити значення розвитку ремісничих професій і їх вплив на розквіт держави...
63179. Юридична відповідальність. Особливості юридичної відповідальності неповнолітніх 23.96 KB
  Розкрити зміст понять юридичної відповідальності крайньої необхідності необхідної оборони; ознайомити з видами юридичної відповідальності та конституційними принципами юридичної відповідальності...
63180. Правомірна поведінка і правопорушення 27.83 KB
  Мета: розкрити поняття правомірна поведінка правопорушення юридична відповідальність; навчити учнів користуватися правовою термінологією застосовувати отримані знання в подальшому житті...
63182. Перші землероби та скотарі на території України 21.74 KB
  План зразок 1 Коли на території України існувала найдавніша цивілізація 2 Чому відкрита вченими культура була названа трипільською і 3 Які заняття були головними в трипільців и 4 Якими знаряддями праці вони користувалися...
63183. ТЕМАТИЧНЕ ОЦІНЮВАННЯ ЗА ТЕМОЮ «ВИНИКНЕННЯ ТА РОЗВИТОК КИЇВСЬКОЇ РУСІ» 19.09 KB
  У 907 році київський князь Олег згідно з легендою літопису повісив на воротах Константинополя свій щит. а показати жителям міста свою приязнь до них; б підкреслити: Візантія віднині під владою Олега; в символічно засвідчити перемогу Київського князя над містом.
63185. Культура та вірування людей за первісних часів 23.4 KB
  Мета: ознайомити учнів із розвитком знань мистецтва та релігійних вірувань перших людей; показати прикладний характер знань давньої людини звязок релігійних уявлень із господарською діяльністю наших предків.