5374

Трансляция программы на языке программирования keil-C. Отладчик программ

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

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

Цель работы. Изучить интегрированную среду программирования keil-C. Получить навыки работы с текстовым редактором этой среды программирования. Получить навыки работы с программными проектами. Научиться транслировать программы...

Русский

2012-12-08

64 KB

8 чел.

Цель работы.

1.1. Изучить интегрированную среду программирования keil-C.

1.2. Получить навыки работы с текстовым редактором этой среды программирования.

1.3. Получить навыки работы с программными проектами.

1.4. Научиться транслировать программы.

1.5. Изучить работу отладчика программ в интегрированной среде программирования keilC.

Исходный текст программы.

main()

{

int A[10]={2,5,-8,7,-3,15,38,-11,66,-6};   //задание массива

int I,S,P;                                 //объявление переменных целого типа

S=0;                                       //начальное значение суммы

P=1;                                       //начальное значение произведения

for (I=1;I<10;I++)                //переменная цикла I изменяется от 1 до 10 с шагом 1

{

P=P*A[I];                                  // нахождение произведения всех элементов массива

if(A[I]<0)                                 //еысли элемент массива меньше 0

S=S+A[I];                                  //нахождение суммы отрицательных элементов массива

}

}

Эта программа находит сумму отрицательных элементов массива А[10]

После выполнения программы результат (сумма) будет находиться в ячейке памяти S.

Файл листинга (файл с расширением .lst).

C51 COMPILER V6.22  L1                                                                     10/06/2009 12:43:45 PAGE 1   

C51 COMPILER V6.22, COMPILATION OF MODULE L1

OBJECT MODULE PLACED IN .\l1.obj

COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE ..\l1.c OPTIMIZE(1,SIZE) DEBUG OBJECTEXTEND PREPRINT OBJECT(.\l1.obj)

stmt level    source

  1          main()

  2          

  3          {

  4   1      

  5   1      int A[10]={2,5,-8,7,-3,15,38,-11,66,-6};   //задание массива

  6   1      

  7   1      int I,S,P;                                 //объявление переменных целого типа

  8   1      

  9   1      S=0;                                       //начальное значение суммы

 10   1      

 11   1      P=1;                                       //начальное значение произведения

 12   1      

 13   1      for (I=1;I<10;I++)                         //переменная цикла I изменяется от 1 до 10 с шагом 1

 14   1      

 15   1      {

 16   2      

 17   2      P=P*A[I];                                  // нахождение произведения всех элементов массива

 18   2      

 19   2      if(A[I]<0)                                 //еысли элемент массива меньше 0

 20   2      

 21   2      S=S+A[I];                                  //нахождение суммы отрицательных элементов массива

 22   2      

 23   2      }

 24   1      

 25   1      }

MODULE INFORMATION:   STATIC OVERLAYABLE

  CODE SIZE        =    147    ----

  CONSTANT SIZE    =     20    ----

  XDATA SIZE       =   ----    ----

  PDATA SIZE       =   ----    ----

  DATA SIZE        =     26    ----

  IDATA SIZE       =   ----    ----

  BIT SIZE         =   ----    ----

END OF MODULE INFORMATION.

C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

Распечатка загрузочного файла (с расширением .hex).

:10099B0000020005FFF80007FFFD000F0026FFF522

:0409AB000042FFFA0D

:100908007BFF7A09799BC003C002C0017B007A0093

:100918007908A801AC02AD03D001D002D0037E0053

:100928007F141208D0751E00751F007520007521F0

:1009380001751C00751D01C3E51D940AE51C648042

:100948009480504EAE20AF21AD1DED25E02408F86F

:10095800E6FC08E6FD1208F68E208F21AF1DEF2574

:10096800E02408F8E6FE08E6FFC3EE6480948050B1

:1009780017AF1DEF25E02408F8E6FE08E6FFEF258F

:100988001FF51FEE351EF51E051DE51D7002051C21

:0209980080A538

:01099A00223A

:030000000209AF43

:0C09AF00787FE4F6D8FD7581210209086C

:10080000E709F608DFFA8046E709F208DFFA803EDA

:1008100088828C83E709F0A3DFFA8032E309F608C7

:10082000DFFA8078E309F208DFFA807088828C832F

:10083000E309F0A3DFFA806489828A83E0A3F608E3

:10084000DFFA805889828A83E0A3F208DFFA804CBD

:1008500080D280FA80C680D4806980F28033801094

:1008600080A680EA809A80A880DA80E280CA8033FD

:1008700089828A83ECFAE493A3C8C582C8CCC58375

:10088000CCF0A3C8C582C8CCC583CCDFE9DEE78045

:100890000D89828A83E493A3F608DFF9ECFAA9F0C4

:1008A000EDFB2289828A83ECFAE0A3C8C582C8CC1A

:1008B000C583CCF0A3C8C582C8CCC583CCDFEADE33

:1008C000E880DB89828A83E493A3F208DFF980CC95

:1008D00088F0EF60010E4E60C388F0ED2402B4048E

:1008E0000050B9F582EB2402B4040050AF23234535

:0608F00082239008507302

:1008F600EF8DF0A4A8F0CF8CF0A428CE8DF0A42E16

:02090600FE22CF

:00000001FF

Таблица значений переменных программы на каждом шаге выполнения.

A[i]

S

0x00

0x0000

0x00

0x0000

0x00

0x0000

0x00

0x0000

0xFF

0x0000

0x00

0x0000

0x00

0x0000

0xFF

0x0000

0xFF

0x0000

0xFF

0x0000

0xFF

0xFFF8

0xFF

0xFFF8

0xFE

0xFFF8

0x00

0xFFF8

0xFF

0xFFF8

0x03

0xFFF8

0xFF

0xFFF8

0xFF

0xFFF5

0xFF

0xFFF5

0x31

0xFFF5

0x00

0xFFF5

0xFF

0xFFF5

0x4E

0xFFF5

0x00

0xFFF5

0xFF

0xFFF5

0xA2

0xFFF5

0xFF

0xFFF5

0xFF

0xFFEA

0xFF

0xFFEA

0xE9

0xFFEA

0x00

0xFFEA

0xFF

0xFFEA

0x89

0xFFEA

0xFF

0xFFEA

0xFF

0xFFE4

0x00

0xFFE4


 

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

85127. Прості і складені задачі на визначення швидкості, часу і відстані. Дії над іменованими числами. Ознайомлення з назвами геометричних тіл 43.93 KB
  Узагальнити зв\'язки між відстанню, часом і швидкістю; закріплювати вміння учнів розв\'язувати задачі на обчислення згаданих величин, виконувати дії над іменованими числами; ознайомити з назвами геометричних тіл.
85128. Дія множення. Переставний, сполучний і розподільний закони множення 57.4 KB
  Узагальнити уявлення учнів про дію множення; повторити взаємозвязки між величинами відстань, швидкість, час; перевірити обчислювальні навички та вміння розвязувати задачі, рівняння, нерівності.
85129. Нумерація трицифрових чисел. Табличне множення. Задачі на зведення до одиниці 224.36 KB
  Нумерація трицифрових чисел. Ознайомити учнів з підручником математики для 4 класу; повторити нумерацію трицифрових чисел зв\'язок дій додавання і множення таблицю множення; удосконалювати вміння розвязувати задачі на зведення до одиниці. Повторення нумерації трицифрових чисел. Назвіть цифру спільну для чисел кожного стовпчика і поясніть що вона означає в тому чи іншому випадку.
85130. Нумерація трицифрових чисел. Записування чисел під диктовку. Розкладання чисел на розрядні доданки 38.96 KB
  Повторити способи читання і записування трицифрових чисел, значення цифри залежно від її місця у запису числа, розкладання чисел на розрядні доданки, таблицю ділення; розвивати уміння розвязувати задачі двома способами, знаходити значення виразів зручним способом.
85131. Письмове додавання і віднімання трицифрових чисел. Знаходження значень буквених виразів. Розміщення відрізків на площині і в просторі 69.07 KB
  Письмове додавання і віднімання трицифрових чисел. Повторити прийоми письмового додавання і віднімання трицифрових чисел ділення і множення круглих чисел; удосконалювати вміння знаходити значення буквених виразів розвязувати задачі на знаходження третього доданка; закріпити поняття про вертикальне і горизонтальне положення відрізків. Заміни додавання множенням. З даного виразу на додавання склади ще один вираз на множення.
85132. исьмове множення на одноцифрове число. Дії над величинами. Круглі числа 126.45 KB
  Повторити прийоми письмового множення трицифрового числа на одноцифрове; удосконалювати обчислювальні навички, вміння розв\\\'язувати складені задачі.
85133. Ділення з остачею. Письмове ділення на одноцифрове число. Задачі на застосування письмового ділення на одноцифрове число 85.19 KB
  Формувати навички ділення з остачею; закріплювати знання табличного ділення; вправляти у письмовому діленні на одноцифрове число, розвязуванні задач на застосування письмового ділення на одноцифрове число.
85134. Вправи на знаходження частини числа. Письмове ділення на одноцифрове число. Задачі, які включають знаходження частини числа 241.33 KB
  Формувати вміння розвязувати задачі, які включають знаходження частини числа; закріплювати навички ділення трицифрового числа на одноцифрове.