Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.03.2010, 19:06   #1
AJIUM
Новичок
Джуниор
 
Регистрация: 16.03.2010
Сообщений: 25
По умолчанию ассемблер - k={0,если x=0 x, если x>0

Приветствую !
Дали задание, почти сделал, но где - то есть ошибка, если не трудно посмотрите пожалуйста ! Спасибо !
Задача k={0,если x=0 x, если x>0
Program primeral vetvlen;
Uses WinCrt;
Var
x:byte;
write('введите x->');readln(x);
Mov Ax,0
Mov Al,x byte
Cmp x.byte
Ja@ Alim
Mov K,0
@ Alim: Mov k.byte
End;
Writeln ('K=',K)
End.
AJIUM вне форума Ответить с цитированием
Старый 18.03.2010, 19:15   #2
Xatr
Форумчанин
 
Аватар для Xatr
 
Регистрация: 17.09.2008
Сообщений: 349
По умолчанию

Вроде работает...
Код:
Program primeral_vetvlen;
Var
x:byte;
k:byte;
label alim;
begin
write('введите x->');readln(x);
asm
Mov Al,0
Mov bl,x
cmp al,bl
jz Alim
Mov k,0
mov al,x
Alim: Mov k,al
End;
Writeln ('K=',K);
End.
сравните...
если чем помог, поставьте отзыв на весы

Последний раз редактировалось Xatr; 18.03.2010 в 19:19.
Xatr вне форума Ответить с цитированием
Старый 18.03.2010, 20:52   #3
AJIUM
Новичок
Джуниор
 
Регистрация: 16.03.2010
Сообщений: 25
По умолчанию

Цитата:
Сообщение от Xatr Посмотреть сообщение
Вроде работает...
Код:
Program primeral_vetvlen;
Var
x:byte;
k:byte;
label alim;
begin
write('введите x->');readln(x);
asm
Mov Al,0
Mov bl,x
cmp al,bl
jz Alim
Mov k,0
mov al,x
Alim: Mov k,al
End;
Writeln ('K=',K);
End.
сравните...
Не работает ошибку выдает Runtime error 105 at 0001:0040.
AJIUM вне форума Ответить с цитированием
Старый 18.03.2010, 21:07   #4
Xatr
Форумчанин
 
Аватар для Xatr
 
Регистрация: 17.09.2008
Сообщений: 349
По умолчанию

Это вы оказывается в delphi пишете...
тогда после строки
Код:
Program primeral_vetvlen;
впишите строку
Код:
{$Apptype console}
если чем помог, поставьте отзыв на весы
Xatr вне форума Ответить с цитированием
Старый 18.03.2010, 23:22   #5
AJIUM
Новичок
Джуниор
 
Регистрация: 16.03.2010
Сообщений: 25
По умолчанию

Цитата:
Сообщение от Xatr Посмотреть сообщение
Это вы оказывается в delphi пишете...
тогда после строки
Код:
Program primeral_vetvlen;
впишите строку
Код:
{$Apptype console}
Не помогает
AJIUM вне форума Ответить с цитированием
Старый 18.03.2010, 23:30   #6
Xatr
Форумчанин
 
Аватар для Xatr
 
Регистрация: 17.09.2008
Сообщений: 349
По умолчанию

у меня в Delphi 7 всё нормально работает.
Код:
Program primeral_vetvlen;
{$APPTYPE CONSOLE}
Var
x:byte;
k:byte;
label alim;
begin
write('введите x->');readln(x);
asm
Mov Al,0
Mov bl,x
cmp al,bl
jz Alim
mov al,x
Alim: Mov k,al
End;
Writeln ('K=',K);
End.
где именно у вас не работает? нажимайте F7 и скажите, на какой строке ошибка.
Изображения
Тип файла: jpg prog.jpg (41.3 Кб, 64 просмотров)
если чем помог, поставьте отзыв на весы

Последний раз редактировалось Xatr; 18.03.2010 в 23:41. Причина: картинка
Xatr вне форума Ответить с цитированием
Старый 19.03.2010, 00:11   #7
netrino
Участник клуба
 
Аватар для netrino
 
Регистрация: 15.07.2008
Сообщений: 1,933
По умолчанию

Ммм... Условие:
Если х = 0, то положить в k ноль, если больше нуля, то положить х
Исходя из этого, не проще ли:
Код:
mov al, x
mov k, al
? Ведь в любом случае в k попадёт значение равное х
netrino вне форума Ответить с цитированием
Старый 19.03.2010, 00:17   #8
Xatr
Форумчанин
 
Аватар для Xatr
 
Регистрация: 17.09.2008
Сообщений: 349
По умолчанию

Ну я это сразу заметил, но условие такое...
если чем помог, поставьте отзыв на весы
Xatr вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Если вы ПРОграммист Maksimus144300 Свободное общение 7 17.11.2009 18:43
Функция ЕСЛИ Алексей! Microsoft Office Excel 7 26.12.2008 03:55
Если функция ЕСЛИ не подходит Katherina_Koval Microsoft Office Excel 1 25.07.2008 19:09
cтранная запись формулы ЕСЛИ: "=+ЕСЛИ(..." icore2008 Microsoft Office Excel 4 10.04.2008 21:32