Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Аватара пользователя
МитяРа
Модератор
Сообщения: 11492
Зарегистрирован: Чт дек 11, 2008 14:52:26
Откуда: град Нижний

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение МитяРа »

7 и 8 строчки - две команды перехода..

Изображение
[img]http://radiokot.ru/forum/download/file.php?id=93376[/img][i][color=#000080][size=85]Между людьми возникает напряжение, если у них разный потенциал...[/size][/color][/i]
Аватара пользователя
IM1
Грызет канифоль
Сообщения: 268
Зарегистрирован: Вт фев 16, 2010 12:10:38
Откуда: Воронеж, Россия

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение IM1 »

МитяРа писал(а):7 и 8 строчки - две команды перехода..
Здрасьте, приплыли.
Ну да, команда cjne иногда выставляет CY, но кому это мешает? В следующем цикле она новое значение выставит или старое снимет, не зависимо от того, сделаем мы {clr c} или нет.
И само собой, что остальным командам, в смысле строкам 9-14, от CY ни жарко, ни холодно.
Аватара пользователя
МитяРа
Модератор
Сообщения: 11492
Зарегистрирован: Чт дек 11, 2008 14:52:26
Откуда: град Нижний

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение МитяРа »

IM1 писал(а):не зависимо от того, сделаем мы {clr c} или нет.
Согласен, что так.. Просто автоматически обратил внимание, что для первого байта бит CY не сбрасывается и отметил это..
В принципе его можно было перенести с конца на начало цикла..
Но твой вариант - всё равно лучше.. :beer:
[img]http://radiokot.ru/forum/download/file.php?id=93376[/img][i][color=#000080][size=85]Между людьми возникает напряжение, если у них разный потенциал...[/size][/color][/i]
Аватара пользователя
IM1
Грызет канифоль
Сообщения: 268
Зарегистрирован: Вт фев 16, 2010 12:10:38
Откуда: Воронеж, Россия

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение IM1 »

МитяРа писал(а):Согласен, что так.. Просто автоматически обратил внимание, что для первого байта бит CY не сбрасывается и отметил это..
Дык, бывает.
Я так подробно расписываю не для Вас ув. МитяРа :beer: , а для начинающих, чтобы не писали бездумно.
Аватара пользователя
МитяРа
Модератор
Сообщения: 11492
Зарегистрирован: Чт дек 11, 2008 14:52:26
Откуда: град Нижний

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение МитяРа »

И тут ты в точку попал, пушистый.. :beer:

Не зря по моей просьбе эту тему прикрепили, количество прочтений всё время увеличивается..
И хоть спрашивают мало, но интерес есть, т.к. в большинстве ВУЗов начинают преподавать с МК51-х..
Классика жанра, она таковая и есть..
[img]http://radiokot.ru/forum/download/file.php?id=93376[/img][i][color=#000080][size=85]Между людьми возникает напряжение, если у них разный потенциал...[/size][/color][/i]
Аватара пользователя
HDredA
Родился
Сообщения: 19
Зарегистрирован: Вс дек 18, 2011 18:44:17

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение HDredA »

IM1 писал(а):
МитяРа писал(а):Согласен, что так.. Просто автоматически обратил внимание, что для первого байта бит CY не сбрасывается и отметил это..
Дык, бывает.
Я так подробно расписываю не для Вас ув. МитяРа :beer: , а для начинающих, чтобы не писали бездумно.

Спасибо :idea:
Димон126
Опытный кот
Сообщения: 811
Зарегистрирован: Вс апр 11, 2010 13:13:37
Откуда: Брянск
Контактная информация:

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение Димон126 »

Помогите реализовать на этом процессоре преобразование из двоичной системы исчесления в восьмиричную, на асемблере.. заранее спасибо
Аватара пользователя
Meteor
Друг Кота
Сообщения: 3961
Зарегистрирован: Пн июл 13, 2009 14:37:39
Откуда: Московская область, наукоград.....
Контактная информация:

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение Meteor »

Тут посоветуют алгоритм - код самим придется писать.
А алгоритм прост.
Зайдействуем 3 регистра.
Третий очищаем.
Загружаем число в первый регистр
Во второй грузим константу 100
отнимаем из первого второй и инкрементируем третий до тех пор пока не установится бит переноса.
Как только перенос возник - уменьшаем третий регистр на 1.
К первому прибавляем константу 100 (второй регистр).
Меняем ниблы третьего регистра.
Грузим во второй регистр число 10.
и начинаем новый цикл до переноса.
По переносу - корректируем содержимое регистра 1 и уменьшаем регистр 3.
Получаем в регистре 3 старший нибл - сотни, младший - десятки. В первом регистре единицы.
Загружая на вход компьютера "мусор", на выходе получим "мусор^32".
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
Аватара пользователя
pyzhman
Друг Кота
Сообщения: 7016
Зарегистрирован: Вс июл 12, 2009 19:15:29
Откуда: Ижевск
Контактная информация:

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение pyzhman »

Чёто не въехал. Восьмеричный от двоичного отличается всего навсего количеством разрядов: у двоичного один разряд, у восьмеричного 3 двоичных разряда. Там и преобразовывать-то нечего. Брать только узкой или широкой ладонью.
Docendo discimus
Аватара пользователя
Meteor
Друг Кота
Сообщения: 3961
Зарегистрирован: Пн июл 13, 2009 14:37:39
Откуда: Московская область, наукоград.....
Контактная информация:

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение Meteor »

Упс.. проглядел что в восьмеричную.
Думаю им задали отбразить числами от 0 до 7...
А тут и переводить нечего даже... фууууууу я так не играю
Загружая на вход компьютера "мусор", на выходе получим "мусор^32".
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
Аватара пользователя
pyzhman
Друг Кота
Сообщения: 7016
Зарегистрирован: Вс июл 12, 2009 19:15:29
Откуда: Ижевск
Контактная информация:

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение pyzhman »

Зато потренировался в набивке текста. :)
Docendo discimus
Аватара пользователя
Meteor
Друг Кота
Сообщения: 3961
Зарегистрирован: Пн июл 13, 2009 14:37:39
Откуда: Московская область, наукоград.....
Контактная информация:

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение Meteor »

pyzhman писал(а):Зато потренировался в набивке текста. :)

Какая тренировка? Я уже устал биться о клавиатуру отчетываясь о проделаной работе :cry:
Загружая на вход компьютера "мусор", на выходе получим "мусор^32".
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
Аватара пользователя
pyzhman
Друг Кота
Сообщения: 7016
Зарегистрирован: Вс июл 12, 2009 19:15:29
Откуда: Ижевск
Контактная информация:

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение pyzhman »

Меньше работать может? Меньше писанины.
Docendo discimus
Димон126
Опытный кот
Сообщения: 811
Зарегистрирован: Вс апр 11, 2010 13:13:37
Откуда: Брянск
Контактная информация:

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение Димон126 »

Так подойдет тот алгоритм для преобразования из 2 в 8??
Аватара пользователя
Meteor
Друг Кота
Сообщения: 3961
Зарегистрирован: Пн июл 13, 2009 14:37:39
Откуда: Московская область, наукоград.....
Контактная информация:

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение Meteor »

Меняйте константы - и считайте раз так задали.
Хотя проще некуда - 11111111b =377o
Загружая на вход компьютера "мусор", на выходе получим "мусор^32".
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
Димон126
Опытный кот
Сообщения: 811
Зарегистрирован: Вс апр 11, 2010 13:13:37
Откуда: Брянск
Контактная информация:

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение Димон126 »

те если я правильно поянл надо забить 377 строчек соотетсввия? и как это вывести на индикацию
Аватара пользователя
Meteor
Друг Кота
Сообщения: 3961
Зарегистрирован: Пн июл 13, 2009 14:37:39
Откуда: Московская область, наукоград.....
Контактная информация:

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение Meteor »

Неправильно!
Делить тут нечего если помнить что
000 = 0
001= 1
010=2
011=3
100=4
101=5
110=6
111=7
1000=10
1001=11
....
Загружая на вход компьютера "мусор", на выходе получим "мусор^32".
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
Димон126
Опытный кот
Сообщения: 811
Зарегистрирован: Вс апр 11, 2010 13:13:37
Откуда: Брянск
Контактная информация:

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение Димон126 »

ну япрдеставляю эту таблицу переходов но как это мк 51 обьяснить чето не вьеду
Димон126
Опытный кот
Сообщения: 811
Зарегистрирован: Вс апр 11, 2010 13:13:37
Откуда: Брянск
Контактная информация:

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение Димон126 »

а дошло до меян достатчоно некое двоичное число 00001111 разбить на 3 триады.. тока вот как это сделать... подскажите.. очень надо
Аватара пользователя
Meteor
Друг Кота
Сообщения: 3961
Зарегистрирован: Пн июл 13, 2009 14:37:39
Откуда: Московская область, наукоград.....
Контактная информация:

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение Meteor »

Да разделите байт из регистра покускам в три других уж наконец.
Блин вот некороткий алгоритм
Исходное число в регистре 0.
Накладываем маску 00000111 со значением и помещаем в регистр 1.
Сдвигаем на 3 разряда вправо регистр 0 с обнулением старших битов.
Накладываем маску 00000111
Помещаем результат регистр 2
Сдвигаем вправо на 3 разряда с обнулением старших бит
В регистре 0 - страшая часть кода.
В регистре 2 - стредняя часть
В регистре 1 - младшая
ПыСы.
Пока набирал - вроде дотумкали сами
Загружая на вход компьютера "мусор", на выходе получим "мусор^32".
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
Ответить

Вернуться в «Разные вопросы по МК»