|
Виж темите без отговор | Виж активните теми
Дата и час: Вто Юли 28, 2026 1:33 am
Задача асемблер за PIC16C73
| Автор |
Съобщение |
|
CarBeta
Ранг: Форумен бог
Регистриран на: Пет Май 01, 2009 4:01 pm Мнения: 1438
|
 Re: Задача асемблер за PIC16C73
Толкова ли е трудно да се прочете условието, да се осъзнае една проста дума - асемблер, да се съобразиме с нея и да се спре с разсъжденията как било в С или в паскал или не знам си още къде. Явно писането на високо ниво ви е накарало да забравите, че в асемблер няма char, int, float ... и т.н. Има R EQU 0x20, R EQU 0x20:2, R EQU 0x20:4 ... и т.н.
|
| Вто Фев 11, 2014 4:07 pm |
|
 |
|
Vesko
Ранг: Популярен
Регистриран на: Пон Мар 22, 2010 8:52 pm Мнения: 328
|
 Re: Задача асемблер за PIC16C73
char, int, long, float, double си ги има и на асемблер, както и да се казват там. Чисто формално условието на задачата не е правилно (е освен, ако не е за 4ти клас и единственото което са учили са 8 битови операции). И R EQU 500, както и R EQU 0x20 не дефинират 8 битови константи, е освен ако за ПИК асемблера си е някакво изключение.
|
| Вто Фев 11, 2014 4:17 pm |
|
 |
|
CarBeta
Ранг: Форумен бог
Регистриран на: Пет Май 01, 2009 4:01 pm Мнения: 1438
|
 Re: Задача асемблер за PIC16C73
Ок, явно съм доста заблуден. Надявам се да ми обясниш какво всъщност означава R EQU 0x20, както и как се дефинират константи в асемблер.
|
| Вто Фев 11, 2014 5:20 pm |
|
 |
|
Vesko
Ранг: Популярен
Регистриран на: Пон Мар 22, 2010 8:52 pm Мнения: 328
|
 Re: Задача асемблер за PIC16C73
По същият начин се дефинират. Но в случая не е гранция че R ще е 8 битова константа. От там не може да съдиш, че аритметиката е осембитова.
|
| Вто Фев 11, 2014 5:36 pm |
|
 |
|
didofen
Ранг: Популярен
Регистриран на: Вто Юни 27, 2006 11:13 am Мнения: 381 Местоположение: Варна
|
 Re: Задача асемблер за PIC16C73
16 серия си е чисто 8 битова  еднобайтова променлива значи само и единствоно 8бита. няма кво да го дъвчите. и другата калючова дума е спомената няколко пъти - асемблер. да не говорим, че инициатора нещо се покри 
|
| Вто Фев 11, 2014 5:56 pm |
|
 |
|
Cekins
Ранг: Форумен бог
Регистриран на: Сря Апр 20, 2005 12:02 pm Мнения: 9119 Местоположение: Разград
|
 Re: Задача асемблер за PIC16C73
Аве стига ве - кво като е асемблер? И Правец8 беше 8 битов ама смяташе дабъл. Такива неща се уточняват - тва че контролера е 8 битов нищо не значи - да не би при ония първите 4 битовите да са се ограничавали със сметки до 0хF - айде стига глупости - такива неща се уточняват - срамота е и за студента и за даскала.
|
| Вто Фев 11, 2014 6:11 pm |
|
 |
|
CarBeta
Ранг: Форумен бог
Регистриран на: Пет Май 01, 2009 4:01 pm Мнения: 1438
|
 Re: Задача асемблер за PIC16C73
Не виждам какъв е проблема дори да не е изрично написано, че резултата трябва да е в 16 битова променлива. То няма и как да е иначе ако искаме да смята правилно. След като резултата изисква променливата да е 16 бита значи ще е такава, какво като не е написано! Все едно шефа/даскала иска да докараш от реката 40 литра вода и ти каже, че в склада има 20 литрови туби. И кво, ще го питаш колко туби да вземеш?? Или ще се въртиш до колата като обран еврейн и ще псуваш как не ти е казал колко туби ти трябват?? След като просвоявам име на 8 битов регистър значи гаранцията ми е 100%, че променливата с това име е 8 битова. А аритметиката в случая е 16 битова, колега, а контролера, с който се смята е 8 битов, което е и целта на задачата.
|
| Вто Фев 11, 2014 6:29 pm |
|
 |
|
Zdrav
Ранг: Форумен бог
Регистриран на: Сря Яну 26, 2005 2:01 pm Мнения: 1952 Местоположение: Варна
|
 Re: Задача асемблер за PIC16C73
"интежер"  значи целочислен. За препълването добре че се сетихте. Но решение на тази задача заслужава не повече от добър 4 ако деленетo на 4 е направено с "truncate to zero".
_________________ Най-опасният враг на истината и свободата е мнозинството.
|
| Вто Фев 11, 2014 7:07 pm |
|
 |
|
miro_atc
Ранг: Форумен бог
Регистриран на: Нед Фев 26, 2006 6:52 pm Мнения: 11266 Местоположение: Добрич
|
 Re: Задача асемблер за PIC16C73
На всички асемблери с които съм работил EQU директивата прави едно и също нещо - дефинира символ за константа. Като размерността се гледа при използването на символа, а не при дефинирането му с EQU.
|
| Вто Фев 11, 2014 7:31 pm |
|
 |
|
Vesko
Ранг: Популярен
Регистриран на: Пон Мар 22, 2010 8:52 pm Мнения: 328
|
 Re: Задача асемблер за PIC16C73
Това трябва да го пише в заданието. При целочислената математика си баш с "truncate to zero".
|
| Вто Фев 11, 2014 7:56 pm |
|
 |
|
ike
Ранг: Форумен бог
Регистриран на: Пет Фев 04, 2005 9:59 pm Мнения: 6019 Местоположение: София
|
 Re: Задача асемблер за PIC16C73
В програмната памет PIC16C73 на тъкмо ще се събере флоат библиотеката и няма да има място един светодиод да се размига.
_________________ Warriors of the Night, ASSEMBLER!!!
|
| Вто Фев 11, 2014 8:09 pm |
|
 |
|
Zdrav
Ранг: Форумен бог
Регистриран на: Сря Яну 26, 2005 2:01 pm Мнения: 1952 Местоположение: Варна
|
 Re: Задача асемблер за PIC16C73
В заданието къде е записано, че става въпрос за целочислена аритметика. Даден е математически израз. Ако напишеш програмче на С и на асемблер нали все до машинен код стига накрая. Вярно че заданието не уточнява такива неща, но пък и не ти вързва ръцете. Кой до където му стига вътъка.
ike не се пъни бе момче. За едното закръгляване няма да ти е нужна никаква библиотека.
_________________ Най-опасният враг на истината и свободата е мнозинството.
|
| Вто Фев 11, 2014 8:15 pm |
|
 |
|
Cekins
Ранг: Форумен бог
Регистриран на: Сря Апр 20, 2005 12:02 pm Мнения: 9119 Местоположение: Разград
|
 Re: Задача асемблер за PIC16C73
Айде сега някой да каже че никога не е ползвал минималния тип който е необходим за целта. Едва ли има някой който с тия малките въшки винаги да ползва само real аритметика. Така, че според мен е важно в конкретния случай разредността на аритеметиката да е уточнена - най-малкото, че дори и при byte се постига signed аритметика - може израза да дава отрицателен byte резултат примерно, а може и отрицателен Int16. И при всичките случаи има особенности (макар и дребнички) при разписването на програмата.
|
| Вто Фев 11, 2014 11:41 pm |
|
 |
|
Цецо
Ранг: Форумен бог
Регистриран на: Пон Сеп 27, 2004 9:22 am Мнения: 15501 Местоположение: София
|
 Re: Задача асемблер за PIC16C73
Е той точно това предлага. Шибваш ги на С в float, пускаш компилатора, изключваш оптимизацията и после на даскала дизасемблерския листинг. Нямам идея колко е имплементацията на това пикче, ама сигурно ще има поне 1 страница асемблер (а може бе 2 с деленето  )... Все за 4-ка трябва да стигне, при все, че едва ли ще има мерак да му провери "работата"  Мен друго ми стана смешно... колко тежко звучи "Java Web Developer", а? Някак си международно така звучи, всява респект 
_________________ "Да еба и шибаната държава" мислеше си Гошо, докато се опитваше да улучи кофата за боклук от балкона на осмия етаж.
|
| Сря Фев 12, 2014 10:27 am |
|
 |
|
Cekins
Ранг: Форумен бог
Регистриран на: Сря Апр 20, 2005 12:02 pm Мнения: 9119 Местоположение: Разград
|
 Re: Задача асемблер за PIC16C73
Да ама като кажеш жава уеб дивелъпер хората казват "уау - голяма работа" пък като кажеш ембедед програмист и питат "кой туй нещо" щото уеб секи знае кво е ама ембедед почти никой.
|
| Сря Фев 12, 2014 11:12 am |
|
|
Кой е на линия |
Потребители разглеждащи този форум: 0 регистрирани и 2 госта |
|
Вие не можете да пускате нови теми Вие не можете да отговаряте на теми Вие не можете да променяте собственото си мнение Вие не можете да изтривате собствените си мнения Вие не можете да прикачвате файл
|
|