Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Симметричное отображений байтов 
:(
    Опции темы
Akimich
Дата 6.7.2010, 06:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Формулировка задачи: Реализуйте с помощью логических операций симметричное отображение старшего байта слова на младший байт с потерей исходных значений. Искал в интернете и книгах , но не нашел что такое симметричное отображение байтов. Помогите пожалуйста, заранее спасибо.
PM MAIL   Вверх
Mikl_
Дата 6.7.2010, 06:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Akimich
это как ?
mov AX,1234h;AH=12h AL=34h
xor AL,AL; AL=0
or AL,AH; AL=12h
ror AL,4; AX=1221h
PM MAIL   Вверх
Akimich
Дата 6.7.2010, 06:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Mikl_, Спасибо проверю

PM MAIL   Вверх
Akimich
Дата 6.7.2010, 11:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Cделал, так как вы мне сказали, хотел спросить еще программу мне надо написать в виде ассемблерной вставки в Visual studio 2008 вот что получилось:  
Код

void main(void)
{
    
    setlocale(LC_ALL,"Russian"); //установка локали в русскую, чтобы работала кирилица
 //инициализация целочисленных переменных
        std::cout << "3-8. Реализуйте с помощью логических операций симметричное отображение старшего байта слова на младший байт с потерей исходных значений. "<< "\n";

    unsigned char rez=0;
        __asm
{
MOV ax,1234h
XOR al,al
or al,ah
ROR al,4
MOV rez,ax
}
std::cout << "При расчет на языке Assembler получилось: " <<rez;
getch(); 
return;
}

Появляется ошибка в строчке  MOV rez,ax  error C2443: конфликт размеров операндов. Какой тип данных сюда лучше подойдет, и так ли я вообще это все сделал?
    
PM MAIL   Вверх
izl3sa
Дата 7.7.2010, 11:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



rez - byte
ax  - word
отсюда и ошипка
rez сделай либо short, либо int
PM MAIL   Вверх
Akimich
Дата 7.7.2010, 19:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Спасибо всем, разобрался с этой задачей smile 

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

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

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


 




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


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

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