|
Startup file для LPC2300/LPC2400 |
|
|
|
 |
Ответов
|
Sep 5 2007, 18:11
|

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

|
Цитата(bodja74 @ Sep 5 2007, 19:24)  Все это или диррективы компиллятору Компиляторы к асемблерному тексту никак не относятся и уж, как минимум, по этой причине ничего не требуют. Цитата собственно к самому асму это отношение имеет слабое Отнюдь.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Sep 5 2007, 19:02
|
Знающий
   
Группа: Свой
Сообщений: 543
Регистрация: 22-10-05
Пользователь №: 9 984

|
Цитата(zltigo @ Sep 5 2007, 21:11)  Компиляторы к асемблерному тексту никак не относятся и уж, как минимум, по этой причине ничего не требуют. Здрасте ,а это как по вашему что,к примеру в том же стартапе. Код $IF (EXTMEM_MODE) LDR R0, =PINSEL2 LDR R1, =PINSEL2_Val STR R1, [R0] $ENDIF И как можно никак не относиться,не компиллировать код стартапа? Цитата Отнюдь. Согласен,я имел ввиду ,что нужно для себя разделять собственно команды асма и директивы.
|
|
|
|
|
Sep 6 2007, 04:47
|

Гуру
     
Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095

|
Цитата(bodja74 @ Sep 5 2007, 22:02)  Здрасте ,а это как по вашему что,к примеру в том же стартапе. Вы свалили в кучу Ассемблер, Компилятор и Препроцессор. Ассемблер - это название программы, которая переводит исходный текст, написанный на языке ассемблера, т.е. на его языке в объектный код. Перед ассемблированием исходник проходит через препроцессор, который обрабатывает всякие $IF. А компилятор переводит в объектный код (реже в ассемблерный исходник) исходный текст с языка высокого уровня, коим язык ассемблера не является. Перед компилированием исходный текст также проходит через (возможно другой) препроцессор. Для краткости язык ассемблера называют ассемблером, как и программу. P.S. после поста alexander55 поправлю - "Вы свалили в кучу понятия Ассемблера, Компилятора и Препроцессора, на что и указал (в своеобразной форме) zltigo" А __heap_base, __heap_limit очень похожи на простые метки, которые скорее всего можно использовать в других файлах для получения адреса начала и конца кучи. То же и StackTop
--------------------
На любой вопрос даю любой ответ"Write code that is guaranteed to work, not code that doesn’t seem to break" ( C++ FAQ)
|
|
|
|
|
Sep 6 2007, 07:30
|
Знающий
   
Группа: Свой
Сообщений: 543
Регистрация: 22-10-05
Пользователь №: 9 984

|
Цитата(Сергей Борщ @ Sep 6 2007, 07:47)  Вы свалили в кучу Ассемблер, Компилятор и Препроцессор. Я неплохо знаю что такое Ассемблер, Компилятор и Препроцессор.Если вы считаете ,что я запутался и свалил все в кучу.Ответте тогда мне на тот же вопрос ,что в этих строчках относиться к Ассемблеру, Компилятору и Препроцессору.  Возможно я для себя узнаю что то новое.  Код $IF (EXTMEM_MODE) LDR R0, =PINSEL2 LDR R1, =PINSEL2_Val STR R1, [R0] $ENDIF Цитата Ассемблер - это название программы, которая переводит исходный текст, написанный на языке ассемблера, т.е. на его языке в объектный код. Начнем с того ,что Ассемблер- это язык программиирования,такой же язык как Си,Бейсик,Паскаль. Если ктото написал программу и назвал ее Ассемблером - это уже его проблемы.Кстати я ни разу не видел обьектного кода Ассемблера - там нечему "обьектиться"  ,на Си ,Бейсике - видел. Цитата Перед ассемблированием исходник проходит через препроцессор, который обрабатывает всякие $IF. А компилятор переводит в объектный код (реже в ассемблерный исходник) исходный текст с языка высокого уровня, коим язык ассемблера не является. Эсли это называется ассемблированием - пускай будет,это делается с языками высокого уровня ,хорошо. Цитата Перед компилированием исходный текст также проходит через (возможно другой) препроцессор. Вот,высокий язык переводиться в асм или обьектный код и тогда ,за работу берется компиллятор(или его вторая половина  ) Теперь то,что я хотел донести. С учетом того ,что стартап уже написан на асме - асемблировать там нечего, Вы совершенно верно заметили "про возможно другой" препроцессор  ,и если еще раскажете что в стартапе делает препроцессор ,а что делают директивы компиллятору,я думаю всем полезно будет почитать. Цитата Для краткости язык ассемблера называют ассемблером, как и программу. Язык да, а вот программу называют - программа НА асме или исходники На асме,как правило  ,хотя есть и особо ленивые.
|
|
|
|
|
Sep 6 2007, 13:53
|

Гуру
     
Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095

|
Цитата(bodja74 @ Sep 6 2007, 10:30)  Я неплохо знаю что такое Ассемблер, Компилятор и Препроцессор. Вы можете обижаться, но пока вы демонстрируете обратное. Освежите знания хотя бы с помощью гугля. Попробуйте реабилитироваться - какая из упомянутых вами программ (или часть, если они объединены) удаляет комментарии из исходного текста? Цитата(bodja74 @ Sep 6 2007, 10:30)  Ответте тогда мне на тот же вопрос ,что в этих строчках относиться к Ассемблеру, Компилятору и Препроцессору.  Возможно я для себя узнаю что то новое.  Код $IF (EXTMEM_MODE) LDR R0, =PINSEL2 LDR R1, =PINSEL2_Val STR R1, [R0] $ENDIF Коспектируйте: $IF (), $ENDIF - директивы препроцессора, указывают что в зависимости от значения EXTMEM_MODE (ноль/не ноль) находящиеся между ними строчки должны быть удалены из текста, передаваемого ассемблеру. LDR, STR - команды ассемблера. Цитата(bodja74 @ Sep 6 2007, 10:30)  Начнем с того ,что Ассемблер- это язык программиирования,такой же язык как Си,Бейсик,Паскаль. Еще раз повторяю - не знаете терминологии. Язык называется языком ассемблера. Цитата(bodja74 @ Sep 6 2007, 10:30)  Если ктото написал программу и назвал ее Ассемблером - это уже его проблемы. Вы работаете с AVR? Как называется программа avrasm2.exe? Вы работали с WinAVR? Как казывается программа avr-as.exe? Цитата(bodja74 @ Sep 6 2007, 10:30)  Кстати я ни разу не видел обьектного кода Ассемблера - там нечему "обьектиться"  ,на Си ,Бейсике - видел. Если ваше знакомство ограничено CodeVision и avrasm2 - то неудивительно. А в нормальных ассемблерах, поддерживающих раздельную компиляцию - это необходимая вещь. Смотрите пример zltigo. Ошибочность остальных ваших рассуждений смотрите, например, здесь: язык ассемблера. Глоссарий.ру Если лень сходить по ссылке, то вот: Цитата Ассемблер От англ.Assemble - собирать Ассемблер - транслятор с языка ассемблера в машинные команды. Заметьте, не компилятор, а транслятор. Поищите там же различие этих двух терминов. Цитата(bodja74 @ Sep 6 2007, 10:30)  Вы совершенно верно заметили "про возможно другой" препроцессор  Спасибо, что поддержали. Только вы опять неправильно поняли - например в gcc можно пропустить ассемблерный исходный текст через С/С++ препроцессор, и, соответственно, использовать в исходнике на языке ассемблера директивы С/С++ препроцессора (для этого файл должен иметь расширение не .s а .S). Цитата(bodja74 @ Sep 6 2007, 10:30)  Язык да, а вот программу называют - программа НА асме или исходники На асме,как правило  ,хотя есть и особо ленивые. Глоссарий.ру, википедия, весь гугль в вашем распоряжении, раз вы не изучали этого по учебникам информатики. Что удивляет - несложно же воспользоваться поиском в интернете, так нет же - с упорством пьяного...
--------------------
На любой вопрос даю любой ответ"Write code that is guaranteed to work, not code that doesn’t seem to break" ( C++ FAQ)
|
|
|
|
Сообщений в этой теме
серый волк Startup file для LPC2300/LPC2400 Sep 4 2007, 14:54 alexander55 Цитата(серый волк @ Sep 4 2007, 18:54) Ск... Sep 5 2007, 05:42 серый волк спасибо
только тогда посоветуйте где взять инфо... Sep 5 2007, 08:26 zltigo Цитата(серый волк @ Sep 5 2007, 11:26) ко... Sep 5 2007, 08:39 серый волк извините конечно,
но может кто посоветовать конкр... Sep 5 2007, 09:05 серый волк Тема со Startup на ARMe для меня новая, прошу изви... Sep 5 2007, 15:06    alexander55 Цитата(Сергей Борщ @ Sep 6 2007, 08:47) В... Sep 6 2007, 05:10     zltigo Цитата(bodja74 @ Sep 6 2007, 10:30) Тепер... Sep 6 2007, 08:19 серый волк Цитата(Сергей Борщ @ Sep 6 2007, 08:47) А... Sep 6 2007, 08:08 alexander55 Цитата(серый волк @ Sep 6 2007, 12:08) да... Sep 6 2007, 13:06 Сергей Борщ Цитата(серый волк @ Sep 6 2007, 11:08) да... Sep 6 2007, 13:26 серый волк Дискуссия очень быстро как я понял ушла от конкрет... Sep 6 2007, 12:36 zltigo Цитата(серый волк @ Sep 6 2007, 15:36) Ди... Sep 6 2007, 12:53 серый волк ответ оказался очень прост:
метка является символь... Sep 6 2007, 13:33 bodja74 ЦитатаЕсли ваше знакомство ограничено CodeVision и... Sep 6 2007, 18:03
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|