Работа с два байта като една единица

Задача: PIC16, ASM.

Има два байта информация (10-битов ADC).

Трябва да сравните тези 10 бита с някои конкретни числа и да направите съответния клон в програмата.

Преди работех с ADC по следния начин: избрах ляво подравняване и работех само с ADRESH, като по този начин загубих 2-те най-малко значими бита. Прецизността беше ненужна.

Сега са необходими всичките 10 бита. Във връзка с това въпросът е: как да разгледаме 2 байта информация като едно цяло? Идват ми на ум някои несръчни методи, за чието изпълнение е необходимо много компютърно време. Може би има някои красиви и ефективни решения?

Е, вижте. Например: трябва да се разклоните: ако стойността на ADC е повече от 450, тогава направете A, ако е по-малко - направете B.

d'450 '= b' 00000001 11000010 '

Което от гледна точка на двоичната бройна система и 8-битова asma означава, че числото X, получено в резултат на преобразуването, е по-малко от това число 450?

Най-значимият байт трябва да бъде по-малък или равен на 1.
Най-малко значимият байт трябва да бъде строго по-малък от 11000010.

Задача: PIC16, ASM.

Има два байта информация (10-битов ADC).

Трябва да сравните тези 10 бита с някои конкретни числа и да направите съответния клон в програмата.

Преди работех с ADC по следния начин: избрах ляво подравняване и работех само с ADRESH, като по този начин загубих 2-те най-малко значими бита. Прецизността беше ненужна.

Сега са необходими всичките 10 бита. Във връзка с това въпросът е: как да разгледаме 2 байта информация като едно цяло? Идват ми на ум някои несръчни методи, за чието изпълнение е необходимо много компютърно време. Може би има някои красиви и ефективни решения?

Какъв е проблемът най-общо? Може би това е сравнение на две 16-битови числа и не е необходимо?

Задачата е изключително проста: изходът на импулсния преобразувател е свързан към ADC чрез разделителя, който приема ШИМ от микроконтролера. Необходимо е да се стабилизира напрежението на изхода на преобразувателя на определено ниво. Обратна връзка, накратко. Тук (http://www.microchip.su/showthread.php?t=11518+) описах задачата. Би било възможно да се използва компараторът и модулът VREF, но обработката на данните от компаратора ми се стори малко по-сложна, отколкото от ADC. В същото време получих възможността да се запозная с 16-битови данни, отдавна исках да го разбера.

Благодаря на всички за вашия съвет, приятели. Четох статиите, разбрах много, не разбрах дори повече (особено във 2-ри:)), но научих основите. В резултат на това го направих по метода, предложен от korsaj и tester, в Proteus кодът е работещ и перфектно стабилизира напрежението на изхода на импулса. И сравнението наистина отнема много малко време. Остава да разберем защо реалната верига е странна:) а именно, тя "стабилизира" напрежението на изхода не когато делителят е 2 V (както е посочено във фърмуера), а когато е 1,8 V. Закачих захранването захранващ блок отделно към ADC, подава напрежение към тях - все още остава прагът от 1,8 V. Чудеса в ситото:)