Отговори на тема  [ 32 мнения ]  Отиди на страница Предишна  1, 2, 3  Следваща
Събиране на две 9 битови числа с асемблер. 
Автор Съобщение
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 20, 2005 12:02 pm
Мнения: 9119
Местоположение: Разград
Мнение 
То ясно че проблема е решен, ама пък като не можеш да го измислиш пусни си един компилатор напиши "С=А+В" е гледай какво ще изгенерира.


Съб Май 21, 2011 10:47 pm
Профил ICQ
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Чет Фев 10, 2011 10:00 pm
Мнения: 13
Мнение 
Избрал е 8 битов ,защото е по лесно от колкото с 16 битов примерно.


Нед Май 22, 2011 1:46 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Нед Ное 21, 2004 11:31 pm
Мнения: 10088
Мнение 
като говорих за абстракция, думите ми не бяха на вятър. защото няма значение дали ще събираш 4,8,9,16,32 или 192 битови числа. принципа е един и същ навсякъде.

елементарното смятане се учи още в първи клас: 3+3=?
защо се ползва десетична система? ами щото човек има 10 пръста. фундаменталното премахване на ограничението от 10 е 'страшия разряд'. така с 10 пръста можем да смятаме в милиони.

какво става като съберем 5+6?
получаваме 1 в младшия разряд и пренос към по-старшия (с тежина 10) - 11. т.е. имаме 1х10^1 + 1x10^0.
това е обичайна аритметика и всеки човек свиква да смята с много големи числа още в най-ранната си възраст.

абстракцията е, че няма значение дали събираш 18762786876+8716278618712 или 0xA1+0xC5 или 0165+0277 или 5+6 (32-битово, 8-битово, 7-битово или 4-битово)

научил съм много хора на шестнайсетично смятане. всички си мислеха, че е отделна дисциплина, докато не им направиш аналогията с 5+6. след това няма проблеми - верно, необичайно е, щото човек няма 16 пръста.


Нед Май 22, 2011 10:13 am
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Пет Май 06, 2011 1:09 am
Мнения: 92
Мнение 
kristiyanko написа:
Избрал е 8 битов ,защото е по лесно от колкото с 16 битов примерно.


Може ли да знам защо, според теб, е по-трудно?


Нед Май 22, 2011 11:11 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Нед Юни 10, 2007 2:22 pm
Мнения: 6492
Местоположение: София
Мнение 
Всъщност явно даскалите много не си знаят работата.

Ако го накарат да събере две еднобитови числа хлапето нататък и само ще
схване как става за повече. И ще разбере какво е ripple carry, carry look ahead и т.н.,
все основни неща които трябва да се знаят, инак остава на ниво html.

_________________
-------------------
www.tgi-sci.com
-------------------
http://www.flickr.com/photos/didi_tgi/


Нед Май 22, 2011 2:41 pm
Профил WWW
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Чет Фев 10, 2011 10:00 pm
Мнения: 13
Мнение 
Поръчах си въпросната книга "PIC микроконтролери 1ва част" сега я чакам да пристигне и като стигна до някъде ще пиша :) .
Поздрави


Нед Май 29, 2011 6:42 pm
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Пет Май 06, 2011 1:09 am
Мнения: 92
Мнение 
kristiyanko написа:
Поръчах си въпросната книга "PIC микроконтролери 1ва част" сега я чакам да пристигне и като стигна до някъде ще пиша :) .
Поздрави


Не е лошо и един Протеус да си изтеглиш.


Нед Май 29, 2011 7:28 pm
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Чет Фев 10, 2011 10:00 pm
Мнения: 13
Мнение 
Здравейте прочетох кногата ,прегледах няколко от примерите на края ,но не се дсешам как да започна ,можете ли да ми помогнете малко само за началото за първите редове .
Благодаря Преедварително :)


Пон Юни 20, 2011 9:19 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Май 29, 2007 2:23 pm
Мнения: 3714
Местоположение: Високо в планината
Мнение 
kristiyanko написа:
Здравейте прочетох кногата ,прегледах няколко от примерите на края ,но не се дсешам как да започна ,можете ли да ми помогнете малко само за началото за първите редове .
Благодаря Преедварително :)

Реализирай първия пример в книжката.
Ако имаш конкретни въпроси по него- питай.

_________________
Хайде де!


Пон Юни 20, 2011 10:14 pm
Профил
Ранг: Новодошъл
Ранг: Новодошъл

Регистриран на: Пет Май 27, 2011 8:25 am
Мнения: 134
Местоположение: Силистра
Мнение 
за начало това ше ти свърши работаhttp://www.piclist.com/techref/piclist/cheapic/bincnt.htm


Вто Юни 21, 2011 8:14 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Пет Фев 04, 2005 9:59 pm
Мнения: 6019
Местоположение: София
Мнение 
http://www.piclist.com/techref/piclist/ ... bincnt.htm
Кондензаторите не са свързани, където трябва.
То и в коментарите това питат хората, ама явно е направена страницата и е забравена.

Това ми изпадна, би трябвало да е вярно. Пример на х86 асемблер, как се събират две 128 битови числа.

Код:
    mov eax,[a]       // low 32-bit
    add [b], eax
    mov eax, [a+4]   // Next 32-bit
    adc [b+4], eax
    mov eax, [a+8]   // Next 32-bit
    adc [b+8], eax
    mov eax, [a+12]   // Next 32-bit
    adc [b+12], eax

_________________
Warriors of the Night, ASSEMBLER!!!


Вто Юни 21, 2011 10:40 am
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Чет Фев 10, 2011 10:00 pm
Мнения: 13
Мнение 
Здравейте направих нещо ,а ето го и него :


Прикачени файлове:
..doc [4.98 KiB]
167 пъти
Нед Юли 10, 2011 7:37 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Пет Фев 04, 2005 9:59 pm
Мнения: 6019
Местоположение: София
Мнение 
Код:
1     List                   p=16f84a                                    ;типа на процесора
2     #include            <p16f84a.inc>                                  ;дефиниране на SFR регистрите

Това може и да не го пишеш. Асемблера само по кода може да се досети, какъв тип и кой модел е процесора.

_________________
Warriors of the Night, ASSEMBLER!!!


Нед Юли 10, 2011 8:14 pm
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Чет Фев 10, 2011 10:00 pm
Мнения: 13
Мнение 
ike написа:
Код:
1 List                   p=16f84a                                         ;типа на процесора
2     #include            <p16f84a.inc>                                  ;дефиниране на SFR регистрите

Това може и да не го пишеш. Асемблера само по кода може да се досети какъв тип и кой модел е процесора.


Това го знам spx аз съм го сложил да се ориентрирам по лесно .
Искам да ви питам дали става за нещо това .


Нед Юли 10, 2011 8:16 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Май 01, 2009 4:01 pm
Мнения: 1438
Мнение 
Явно цялата дискусия до тук е била напразно. Ти се опитваш да налееш 11 литра в туба от 10 литра. Нали се сещаш, че излишният литър ще се разлее по земята. Що реши, че като му подадеш 9 бита и контролера ще ти ги сметне ?? Всъщност ще ги сметне, като просто игнорира деветия бит, който си му написал. Резултатът ще си е 8 битов. Единия литър по земята го губиш така или иначе.


Нед Юли 10, 2011 8:18 pm
Профил
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 32 мнения ]  Отиди на страница Предишна  1, 2, 3  Следваща

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 2 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни