Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
-8 / 1 / 0
Регистрация: 11.12.2011
Сообщений: 364
1

Не происходит отладка

28.01.2012, 16:51. Показов 2240. Ответов 22
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Код
begin
  asm
    mov ecx,5
    mov edx,2
    add ecx,edx
  end;
end;
при нажатии на бутон ничего не происходит как будто и нет кода
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.01.2012, 16:51
Ответы с готовыми решениями:

Как происходит происходит простейший вывод сообщения в консоль в MASM
Простите за нубство. Начал читать книгу Калашникова и там в первейшей программе такой код: CSEG...

Запуск Excel из Access происходит строго периодически - через раз происходит сбой
запуск Excell из Access происходит строго периодически - через раз. происходит сбой. После сбоя...

В какой части матрицы происходит накопление суммы. обьясните, что и как происходит, пожалуйста
Uses crt; Var a: Array of Real; i,j,n,k: Integer; s: Real; BEGIN Randomize;...

Ini-файл: чтение происходит без проблем, но запись в файл не происходит, почему?
Пытаюсь научиться работать с ini файлам, чтение происходит без проблем но запись в файл не...

22
Shiningemerald
384 / 117 / 22
Регистрация: 05.01.2012
Сообщений: 951
28.01.2012, 17:00 2
а сама assembler-вставка правильно работает?
0
-8 / 1 / 0
Регистрация: 11.12.2011
Сообщений: 364
28.01.2012, 17:01  [ТС] 3
Цитата Сообщение от Electroflower Посмотреть сообщение
а сама assembler-вставка правильно работает?
что за ассемблер вставка?
0
Shiningemerald
384 / 117 / 22
Регистрация: 05.01.2012
Сообщений: 951
28.01.2012, 17:04 4
ну вы же пишете в Delphi? так ведь?
а это:
Assembler
1
2
3
4
5
 asm
    mov ecx,5
    mov edx,2
    add ecx,edx
  end;
это и есть вставка на языке assembler
не уж то вы не знали?
0
-8 / 1 / 0
Регистрация: 11.12.2011
Сообщений: 364
28.01.2012, 17:06  [ТС] 5
Цитата Сообщение от Electroflower Посмотреть сообщение
это и есть вставка на языке assembler не уж то вы не знали?
я вобще впервые применяю встроенный ассемблер в делфи. До этого я программировал на fasme.
0
Shiningemerald
384 / 117 / 22
Регистрация: 05.01.2012
Сообщений: 951
28.01.2012, 17:11 6
Цитата Сообщение от ТотКтоНадо Посмотреть сообщение
я вобще впервые применяю встроенный ассемблер в делфи
assembler он и в Delphi assembler и в тасме и в фасме, должны знать что там происходит у вас
вообще я конечно не сильна в assembler-e но по-моему тут просто сложение содержимого двух регистров происходит. Не знаю как на это должен среагировать Delphi
0
-8 / 1 / 0
Регистрация: 11.12.2011
Сообщений: 364
28.01.2012, 17:16  [ТС] 7
Цитата Сообщение от Electroflower Посмотреть сообщение
assembler он и в Delphi assembler и в тасме и в фасме, должны знать что там происходит у вас
вообще я конечно не сильна в assembler-e но по-моему тут просто сложение содержимого двух регистров происходит. Не знаю как на это должен среагировать Delphi
но в отлодчике такие и должны строки как я написал в компиляторе

и допустимы таки инструкиции?
Код
begin
  asm
    mov ecx,5
    mov edx,5
    add ecx,edx
    x db ecx
  end;
  form 1.caption:=x
end;
0
Shiningemerald
384 / 117 / 22
Регистрация: 05.01.2012
Сообщений: 951
28.01.2012, 17:22 8
а какое число вы ожидаете увидеть там?
0
-8 / 1 / 0
Регистрация: 11.12.2011
Сообщений: 364
28.01.2012, 17:23  [ТС] 9
Цитата Сообщение от Electroflower Посмотреть сообщение
а какое число вы ожидаете увидеть там?
10--------------------
0
Shiningemerald
384 / 117 / 22
Регистрация: 05.01.2012
Сообщений: 951
28.01.2012, 17:30 10
Я сделала так:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
function MyFunction: int64;
begin
asm
    mov ecx,5
    mov edx,5
    add ecx,edx
end;
end;
 
procedure TForm1.Button1Click(Sender: TObject);
begin
Label1.caption:=Inttostr(MyFunction);
 
end;
 
end.
число выводит большое, но я не знаю что оно значит

Добавлено через 4 минуты
Тип Int64 это 64 битовое целое число со знаком если что как раз для больших чисел)
0
0 / 0 / 2
Регистрация: 29.06.2011
Сообщений: 130
28.01.2012, 17:37 11
Delphi
1
2
3
4
5
6
7
8
9
begin
 asm
 mov ecx,5
 mov edx,5
 add ecx,edx
 x db ecx
 end;
 form1.caption:=x
end;
x какого типа объявляете? и не помешал бы полностью весь код.
0
Shiningemerald
384 / 117 / 22
Регистрация: 05.01.2012
Сообщений: 951
28.01.2012, 17:43 12
Ierehon, это и есть весь код ,что вы еще хотели?
там один Button и все на форме, как я поняла. Результат в Caption выводится
0
-8 / 1 / 0
Регистрация: 11.12.2011
Сообщений: 364
28.01.2012, 20:21  [ТС] 13
Цитата Сообщение от Electroflower Посмотреть сообщение
Тип Int64 это 64 битовое целое число со знаком если что как раз для больших чисел)
Код
function MyFunction: byte;
begin
  asm
    mov al,1
end;
end;
получаеться число 192
фигня какая то
а отладки все еще нету
0
Shiningemerald
384 / 117 / 22
Регистрация: 05.01.2012
Сообщений: 951
28.01.2012, 20:59 14
может быть так?:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
function MyFunction: int64;
var x:dword;
begin
  asm
    mov ecx,5
    mov edx,5
    add ecx,edx
    mov x, ecx
end;
end;
 
procedure TForm1.Button1Click(Sender: TObject);
begin
  Label1.Caption:=inttostr(MyFunction);
end;
0
-8 / 1 / 0
Регистрация: 11.12.2011
Сообщений: 364
29.01.2012, 11:46  [ТС] 15
Цитата Сообщение от Electroflower Посмотреть сообщение
может быть так?:
слушай я как то хотел проверить наличие переменной в отладчике, но при отладке просто показалось число на форме но отладки не произошло как будто и небыло кода. Чтоб произошла отладка отключить опцию в компиляторе но какая опция я незнаю
0
13104 / 5885 / 1706
Регистрация: 19.09.2009
Сообщений: 8,808
29.01.2012, 14:12 16
Цитата Сообщение от ТотКтоНадо Посмотреть сообщение
Чтоб произошла отладка отключить опцию в компиляторе но какая опция я незнаю
Для включения режима отладки:
Главное меню - Project - Options... - закладка Compiler:
1. Убрать галочку в опции Optimization.
2. Поставить галочку в опции Debug Information.
Если надо отслеживать на уровне исключений выход за границы диапазонов, ошибки ввода вывода и переполнения, тогда можно поставить ещё 3 галочки:
3. Range Checking - ошибки выхода за границы диапазонов.
4. I/O Checking - ошибки ввода/вывода.
5. Overflow Checking - ошибки переполнения.
---
Напомню. На сайте есть специальный раздел по ассемблерам: Assembler, MASM, TASM. Там можно задавать вопросы, так же и по ассемблеру в Delphi.
0
-8 / 1 / 0
Регистрация: 11.12.2011
Сообщений: 364
29.01.2012, 15:45  [ТС] 17
Цитата Сообщение от Mawrat Посмотреть сообщение
Для включения режима отладки: Главное меню - Project - Options... - закладка Compiler: 1. Убрать галочку в опции Optimization. 2. Поставить галочку в опции Debug Information. Если надо отслеживать на уровне исключений выход за границы диапазонов, ошибки ввода вывода и переполнения, тогда можно поставить ещё 3 галочки: 3. Range Checking - ошибки выхода за границы диапазонов. 4. I/O Checking - ошибки ввода/вывода. 5. Overflow Checking - ошибки переполнения. --- Напомню. На сайте есть специальный раздел по ассемблерам: Assembler, MASM, TASM. Там можно задавать вопросы, так же и по ассемблеру в Delphi.
все равно нет отладки
0
13104 / 5885 / 1706
Регистрация: 19.09.2009
Сообщений: 8,808
29.01.2012, 17:19 18
Цитата Сообщение от ТотКтоНадо Посмотреть сообщение
все равно нет отладки
После такой настройки надо перекомпилировать весь проект через Build. И после этого запустить программу в режиме отладки.
---
ТотКтоНадо, я проверил - у меня при настройках, о которых я писал, ассемблерный код отлаживается. Каждая команда ассемблерного кода выполняется по шагам - через F7 или F8.
0
-8 / 1 / 0
Регистрация: 11.12.2011
Сообщений: 364
29.01.2012, 23:20  [ТС] 19
Цитата Сообщение от Mawrat Посмотреть сообщение
После такой настройки надо перекомпилировать весь проект через Build. И после этого запустить программу в режиме отладки.
что за build?
0
13104 / 5885 / 1706
Регистрация: 19.09.2009
Сообщений: 8,808
30.01.2012, 00:27 20
Цитата Сообщение от ТотКтоНадо Посмотреть сообщение
что за build?
Это: Главное меню - Project - Build <имя проекта>. - При этом происходит перекомпиляция всех участвующих в проекте модулей с учётом действующих в настоящий момент настроек.
0
30.01.2012, 00:27
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.01.2012, 00:27
Помогаю со студенческими работами здесь

При загрузке формы происходит заполнение DataSet, но заполнение происходит не вполне корректно
Есть строго типизированные DataSet и TableAdapter. При загрузке формы происходит заполнение...

Отладка
Программа выдирает из документа строку, и выводит ее в виде сообщения по нажатию кнопки, после...

Отладка :)
Доброго времени суток. Подскажите пожалуйста! Делаю отладку в Visual Studio. Хочу чтобы выполнилось...

Отладка
Собственно, ущёл из MVS, при отладки при навводе на переменную в редакторе выходило, то, что там...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru