реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Структуры в ассемблере
777777
сообщение Aug 26 2007, 04:54
Сообщение #1


Профессионал
*****

Группа: Участник
Сообщений: 1 091
Регистрация: 25-07-07
Из: Саратов
Пользователь №: 29 357



Вроде бы в 51-м ассемблере можно было объявлять структуры, аналогичные C-шным и как-то работать с ними. Или мне приснилось?
Go to the top of the page
 
+Quote Post
zltigo
сообщение Aug 26 2007, 07:42
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(777777 @ Aug 26 2007, 07:54) *
Вроде бы в 51-м ассемблере

Вы наверное даже не представляете, наверное, сколько из 51 Ассемблеров существует в природе.
Структуры, в проиличных современных ASM действительно описывать можно и нужно!.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
repairDV
сообщение Aug 26 2007, 09:41
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 578
Регистрация: 7-11-06
Из: Хабаровск
Пользователь №: 22 044



Если данные - константы, то просто записываете в ПЗУ после основной программы таблицу и с ней работаете.


--------------------
Маленький нанайца. А-а. А-а. Оморочком плыл. Маленький проточка. Осетра ловил.
Go to the top of the page
 
+Quote Post
777777
сообщение Aug 26 2007, 13:10
Сообщение #4


Профессионал
*****

Группа: Участник
Сообщений: 1 091
Регистрация: 25-07-07
Из: Саратов
Пользователь №: 29 357



Цитата(zltigo @ Aug 26 2007, 11:42) *
Вы наверное даже не представляете, наверное, сколько из 51 Ассемблеров существует в природе.

Компиляторов может и много, но язык (стандарт) один.

Цитата(zltigo @ Aug 26 2007, 11:42) *
Структуры, в проиличных современных ASM действительно описывать можно и нужно!.

А как? Какой синтаксис?


Цитата(repairDV @ Aug 26 2007, 13:41) *
Если данные - константы, то просто записываете в ПЗУ после основной программы таблицу и с ней работаете.

А почему именно после? Их обычно помещают в отдельный сегмент, а уж куда его поместит линкер - ему лучше знать.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Aug 26 2007, 13:38
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(777777 @ Aug 26 2007, 16:10) *
Компиляторов может и много, но язык (стандарт) один.

Для начала, так уж повелось, асемблированием занимаетя не компилятор.
Здорово видать отстал я отстал от жизни - ну давате ссылочку поищите на "стандарт ассемблеров" smile.gif.....


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
vvs157
сообщение Aug 26 2007, 14:34
Сообщение #6


Профессионал
*****

Группа: Свой
Сообщений: 1 526
Регистрация: 8-04-05
Пользователь №: 3 960



Цитата(777777 @ Aug 26 2007, 17:10) *
Компиляторов может и много, но язык (стандарт) один.

Это как так? А Вы случаем ассемблер с Си не путаете? Во-первых Вы по-видимому имеете ввиду мнемоники. Обычно действительно все пользуются мнемониками производителя процессора. Но бывают и ислючения. Например в юнихическом мире существует набор мнемоник ассемблера для х86 не совпадающий с интеловским. А во-вторых в любом, даже самом простом ассемблере есть куча операторов, директив итп, которые никакими стандартами не регламентируются и определяются только вкусами создателей ассемблера. Как пример - директивы и формат записи родного борландовского х86 ассемблера и микросовтовского. Про 51-й я уж не говорю - сколько производителей, столько и директив, псевдооператоров итп.
Go to the top of the page
 
+Quote Post
777777
сообщение Aug 28 2007, 08:31
Сообщение #7


Профессионал
*****

Группа: Участник
Сообщений: 1 091
Регистрация: 25-07-07
Из: Саратов
Пользователь №: 29 357



Цитата(vvs157 @ Aug 26 2007, 18:34) *
Это как так? А Вы случаем ассемблер с Си не путаете?


А при чем тут Си? Или вы считаете, что программу на Си транслирует компилятор, а на ассемблере - какая-то другая, с другим названием?

Цитата(vvs157 @ Aug 26 2007, 18:34) *
<...> А во-вторых в любом, даже самом простом ассемблере есть куча операторов, директив итп, которые никакими стандартами не регламентируются и определяются только вкусами создателей ассемблера.


Тем не менее создатели ассемблера понимают, что для того чтобы переманить пользователей, он должне быть максимально совместим с существующими, так что стандарт де-факто существует.

Но это ладно, тонкости терминологии, а по-существу кто-нибудь скажет по поводу структур в ассемблере?
Go to the top of the page
 
+Quote Post
Deka
сообщение Aug 28 2007, 11:13
Сообщение #8


Местный
***

Группа: Свой
Сообщений: 248
Регистрация: 18-07-06
Из: Сочи
Пользователь №: 18 890



Так как компиляторы обычно нужны для языков высокого уровня, а ассемблер таковым не является, думаю что правильным будет транслятор с ассемблера и компилятор Си. Ну и очевидно в связи с низкоуровневостью ассемблеру структуры как-бы и не нужны... Их можно оформить просто в тексте. Для удобочитаемости. Ну и префиксы понаделать.
Go to the top of the page
 
+Quote Post
vvs157
сообщение Aug 28 2007, 21:11
Сообщение #9


Профессионал
*****

Группа: Свой
Сообщений: 1 526
Регистрация: 8-04-05
Пользователь №: 3 960



Цитата(777777 @ Aug 28 2007, 12:31) *
А при чем тут Си? Или вы считаете, что программу на Си транслирует компилятор, а на ассемблере - какая-то другая, с другим названием?

Традиционно называется компилятором транслятор с языком высокого уровня, а ассемблером - с мнемоник процессора так как ассемблер порождает код "один-в-один"
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 27th July 2025 - 07:22
Рейтинг@Mail.ru


Страница сгенерированна за 0.01416 секунд с 7
ELECTRONIX ©2004-2016