Форум программистов, компьютерный форум, киберфорум
Assembler для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
1 / 1 / 0
Регистрация: 19.12.2012
Сообщений: 69
1

Работа с массивом

27.05.2013, 17:27. Показов 724. Ответов 1
Метки нет (Все метки)

Здравствуйте.
Имеется ассемблерная вставка для Си, которая в массив char name[256] должна записать следующие значения:
name[0]='m';
name[1]='k';
name[2]='d';
name[3]='i';
name[4]='r';
name[5]=' ';

Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
int main()
{
char name[256];
asm
(
"movl $0,%ebx;"
"movb $109,%bl;"
"movb %bl,name(%ebx);"
"movl $1,%ebx;"
"movb $107,%bl;"
"movb %bl,name(%ebx);"
"movl $2,%ebx;"
"movb $100,%bl;"
"movb %bl,name(%ebx);"
"movl $3,%ebx;"
"movb $105,%bl;"
"movb %bl,name(%ebx);"
"movl $4,%ebx;"
"movb $114,%bl;"
"movb %bl,name(%ebx);"
"movl $5,%ebx;"
"movb $32,%bl;"
"movb %bl,name(%ebx);"
);
return 0;
}
Программирование осуществляется под Linux (компилятор Geany), поэтому соблюдается требуемый синтаксис.
Пробовал 2 варианта:
1) Писать в регистр bl буквы так: "movb $'b',%bl;" или "movb 'b',%bl;" - возникает ошибка
2) Писать в регистр bl код ASCII нужной буквы: "movb $114,%bl;" - компилируется.
Затем содержимое bl переносится в нужную ячейку массива: "movb %bl,name(%ebx);"

Но это в теории. А на практике это не работает - ничего никуда не заполняется.
В чем проблема?

Добавлено через 3 часа 33 минуты
Такой вопрос: если есть массив
C
1
char name[256]
Как можно обратиться к его ячейке, кроме как name[0], name[1]...?

Помню, что по смещению, но как? Скорее всего, здесь нужно работать так.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.05.2013, 17:27
Ответы с готовыми решениями:

Работа с массивом
Я новичок в юнити. Мне задали задачу- создать массив с разными числами(положительными и...

Работа с массивом
Объясните пожалуйста, каким способом можно: 1)вернуть массив только с цифрами? 2) сделать первые...

Работа с массивом
Необходимо в TextBox1 записать массив. В TextBox2 его максимальный элемент. В TextBox3 порядковый...

Работа с массивом
необходимо создать массив для углов в градусах, который бы считался от введенного угла через 15...

1
Ушел с форума
Автор FAQ
14189 / 7071 / 834
Регистрация: 11.11.2010
Сообщений: 12,686
27.05.2013, 17:46 2
Скорее всего, здесь нужно работать так.
Как? Открой секрет...
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.05.2013, 17:46

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Работа с массивом
Здравствуйте, нужно было написать программу, которая получает размер массива, инициализирует его...

Работа с массивом
Есть массив допустим состоящий из элементов 1 2 3 4 5 6 7 8 9 10 надо начиная с 6 элемента по 10...

Работа с массивом
Товарищи, помогите воспрепятствовать отчислению Сдавал уже несколько раз Все не принимали ...

Работа с Массивом
Привет всем. задача стоит в том, чтобы элементы заданного одномерного массива вывести в след....


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.