Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Просто ### 
:(
    Опции темы
Kg1
  Дата 13.11.2010, 19:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 29.9.2010

Репутация: нет
Всего: нет



нужно было написать вот это
В памяти дана строка символов, находящаяся по адресу А и длиной N. Проверьте встречаются ли в строке символы кириллицы. В зависимости от проверки выведете на экран Y или N. В ячейку В выведите их количество.

написал вот это и только для букв от "A"  до "п". Дальше писать не стал серавно зацикливается

Код

           MOV          SI, A (1000)                //адрес начала строки
          MOV          BL, N      (9)        // длина строки
           MOV          DI, 0                // кол-во букв кириллицы
           MOV          BX, B  (1100)            // адрес B для хранения Y/N
                     M1:
           MOV          AX, [SI]           // прочитаем первую букву строки
           CMP          AX,80               //сравниваю первый элемент и ASCII код буквы А
                     N2:
           inc            DI                    //  если AX больше переходим по метке
           NOP                                // конец n2
                      N1: 
          CMP          AX,AF             // сравниваю элемент и ASCII код буквы п
           JBE             N2                  //   если AX меньше то переходим по метке
           NOP                                  // конец n1
           JAE            N1                    //  если AX >= 80     переходим по метке N1 если нет идем дальше
           INC             SI                      //  переходим к следующему элементу строки
           DEC            bl                   //  уменьшаем BL на 1
          CMP           bl, 0             // сравниваем BL с 0
           loop           M1                // если число в BL  превышает  0 то прыгаем на метку
                      M2:                     //метка 
          MOV           [BX], DI   
           INC              BX                 // перейдем к следующему элементу
          MOV          [BX], 4E        // выведем в BX значение 4E (N)    
          NOP                              // конец метки M2
                       M3:
          MOV           [BX], DI   
          INC              BX                 // перейдем к следующему элементу
          MOV          [BX], 59         // выведем в BX значение  59 (Y)
            NOP                               // конец M3
           CMP           DI,0               //  проверяем есть ли кирилица
           JE                M2               // если DI равно 0 то перейдем по метке m2  если нет идем дальше
           JA               M3                 // если Di не равно 0 то переходим по m3
          RET
         NOP


критикуйте жесще я сам не понял что написал!!!
PM MAIL   Вверх
iff
Дата 13.11.2010, 23:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Администратор
**


Профиль
Группа: Участник
Сообщений: 949
Регистрация: 23.3.2007

Репутация: 4
Всего: 16



Цитата(Kg1 @  13.11.2010,  19:28 Найти цитируемый пост)
символы кириллицы

В какой кодировки?

Добавлено через 1 минуту и 3 секунды
Я так понимаю в досовской?


--------------------
DOS... Синей пеленой экран заполнил чистый DOS 
Мышь... Стала вдруг квадратной, потеряла форму мышь... 
Я разбил окно, девяностопятое мастдайное окно, 
И поставил DOS, и тогда увидел: Это счастье, — вот оно.  
PM MAIL WWW   Вверх
Kg1
Дата 14.11.2010, 00:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 29.9.2010

Репутация: нет
Всего: нет



Да вней самой ASCII

Это сообщение отредактировал(а) Kg1 - 14.11.2010, 00:49
PM MAIL   Вверх
iff
Дата 14.11.2010, 14:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Администратор
**


Профиль
Группа: Участник
Сообщений: 949
Регистрация: 23.3.2007

Репутация: 4
Всего: 16



Алгоритм:
Код

Флаг = "N"
[B] = 0
i = A

Цикл N раз
   Если [i] < "А", то к Лат
   Если [i] > "ё", то к Лат
   Если [i] <= "п", то к Кир
   Если [i] < "р", то к Лат
 Кир:
   Флаг = "Y"
   Инкремент [B]
 Лат:
   Инкремент i
Конец Цикла

Вывести Флаг



--------------------
DOS... Синей пеленой экран заполнил чистый DOS 
Мышь... Стала вдруг квадратной, потеряла форму мышь... 
Я разбил окно, девяностопятое мастдайное окно, 
И поставил DOS, и тогда увидел: Это счастье, — вот оно.  
PM MAIL WWW   Вверх
Kg1
Дата 14.11.2010, 22:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 29.9.2010

Репутация: нет
Всего: нет



я уже написал.
спасибо
PM MAIL   Вверх
iff
Дата 15.11.2010, 16:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Администратор
**


Профиль
Группа: Участник
Сообщений: 949
Регистрация: 23.3.2007

Репутация: 4
Всего: 16



можешь здесь выложить код получившейся программы?

Это сообщение отредактировал(а) iff - 15.11.2010, 16:42


--------------------
DOS... Синей пеленой экран заполнил чистый DOS 
Мышь... Стала вдруг квадратной, потеряла форму мышь... 
Я разбил окно, девяностопятое мастдайное окно, 
И поставил DOS, и тогда увидел: Это счастье, — вот оно.  
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Asm для начинающих"
MAKCim
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой КОД.
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MAKCim.

 
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Asm для начинающих | Следующая тема »


 




[ Время генерации скрипта: 0.0702 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.