5374

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

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

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

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

Русский

2012-12-08

64 KB

7 чел.

Цель работы.

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


 

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

28043. Промышленное лесопользование, его виды. Приемы возобновления лесов 10.97 KB
  Способы возобновления леса. Изменение старого поколения леса новым называется возобновлениям леса. При естественном семенном возобновлении леса молодое поколение генетически и экологически лучше отвечает конкретным условиям выращивания: климату почве. Благополучно обстоит дело только в лесах третьей группы.
28045. Рациональное использование и охрана климатических ресурсов. Источники загрязнения атмосферы и последствий 17.63 KB
  В нем содержится азота Ng 783 кислорода 0^ 2095 диоксида углерода СО^ 003 аргона Ar 093 от объема сухого воздуха небольшое количество других инертных газов. Однако изза огромного количества азота в атмосфере проблема его баланса не так серьезна как баланс кислорода и углекислого газа. лет назад содержание кислорода в атмосфере было в тысячу раз меньше чем сейчас так как не было основных продуцентов кислорода зеленых растений. Жизнедеятельность живых организмов поддерживается...