ÊåöÜëáéï 5 ÁðáñéèìçôÝò- ÓõãêñéôÝò Åðéäéùêüìåíïé óôü ïé: ¼ôáí ïëïêëçñþóåôå ôç ìåëýôç áõôïý ôïõ êåöáëáßïõ, èá åßóôå éêáíïß: é íá ðåñéãñüöåôå ôéò åíôïëýò ðïõ ñçóéìïðïéïýíôáé ãéá ôïí ðñïãñáììáôéóìü ôùí áðáñéèìçôþí êáé ôùí óõãêñéôþí é íá áíáöýñåôå ôá åßäç ôùí áðáñéèìçôþí.
Ï ôñüðïò ëåéôïõñãßáò ôùí åíôïëþí ôïõ áðáñéèìçôþ ó åôßæåôáé ìå ôçí ïñãüíùóç ôùí bit óôï åóùôåñéêü ôçò ëýîçò óôç ìíþìç ôïõ ÐËÅ ðïõ áíôéóôïé åß óôïí êáôá ùñçôþ. Ó åäüí üëïé ïé êáôáóêåõáóôýò ÐËÅ óõìâïëßæïõí ôïõò áðáñéèìçôýò ìå ôï ãñüììá C (áðü ôï áñ éêü ôïõ áããëéêïý üñïõ counter ìåôñçôþò Þ áðáñéèìçôþò), áêïëïõèïýìåíï áðü Ýíáí áñéèìü ðïõ õðïäçëþíåé ôïí Ýíá óõãêåêñéìýíï áðü ôïõò äéáèýóéìïõò áðáñéèìçêåöüëáéï 5 Óôï ðáñüí êåöüëáéï ðáñïõóéüæåôáé ç ìýèïäïò ìå ôçí ïðïßá ïé Ðñïãñáììáôéæüìåíïé Ëïãéêïß ÅëåãêôÝò åéñßæïíôáé ôéò ðñüîåéò ôçò êáôáìýôñçóçò (ð.. ôïõ áñéèìïý ôùí ðáëìþí ðïõ ðáñüãïíôáé åîùôåñéêü) êáé ôçò óýãêñéóçò ìåôáîý áñéèìçôéêþí ôéìþí (ð.. ãéá ôç äéáðßóôùóç ôçò ìåãáëýôåñçò áðü äýï ôéìýò). Ôï êåöüëáéï áíáöýñåé ôéò óõíþèåéò åíôïëýò ãéá áõôýò ôéò ëåéôïõñãßåò êáé ôïí ôñüðï ñþóçò ôïõò êáôü ôïí ðñïãñáììáôéóìü ôùí ÐËÅ. 5.1 Åßäç êáé äïìþ ôùí áðáñéèìçôþí ÐïëëÝò åöáñìïãýò áõôïìáôéóìïý ðåñéëáìâüíïõí ìéá Þ ðåñéóóüôåñåò äéáäéêáóßåò êáôáìýôñçóçò, äçëáäþ ôçí êáôáãñáöþ ôïõ áñéèìïý ôùí åìöáíßóåùí åíüò ãåãïíüôïò ð.. ôùí áõôïêéíþôùí ðïõ ðåñíïýí áðü ìéá ðýëç, ôùí êéíþóåùí ðïõ åêôýëåóå ìéá ìç áíþ, ôùí ðåñéóôñïöþí åíüò ôõìðüíïõ êëð. Ãéá áõôü ôï ëüãï, üëïé ïé ÐËÅ äéáèýôïõí Ýôïéìåò åíôïëýò ãéá ôçí êáôáìýôñçóç ðáëìþí. Ïé ëåéôïõñãßåò áõôýò ïíïìüæïíôáé áðáñéèìçôýò Þ ìåôñçôýò (counters). ÁíÜëïãá ìå ôï ôñüðï êáôáìýôñçóçò, ïé áðáñéèìçôýò êáôáôüóóïíôáé óå: Ø ÁðáñéèìçôÝò áýîçóçò (up counters). Îåêéíïýí áðü ìéá áñ éêþ ôéìþ êáé óå êüèå ðáëìü ðïõ ëáìâüíïõí áõîüíïõí ôçí ôñý ïõóá ìýôñçóç êáôü ìéá ìïíüäá Ø ÁðáñéèìçôÝò ìåßùóçò (down counters) Îåêéíïýí áðü ìéá áñ éêþ ôéìþ êáé óå êüèå ðáëìü ðïõ ëáìâüíïõí ìåéþíïõí ôçí ôñý ïõóá ìýôñçóç êáôü ìéá ìïíüäá Ø ÁðáñéèìçôÝò áõîï-ìåßùóçò (up-down counters) Þ áðëü áðáñéèìçôýò. ÓõíäõÜæïõí ôéò ëåéôïõñãßåò ôùí ðáñáðüíù, äçëáäþ ìåéþíïõí Þ áõîüíïõí ôçí ôñý ïõóá ôéìþ ìýôñçóçò, áíüëïãá ìå ôçí Üöéîç ðáëìþí óå äýï ùñéóôýò áðïëþîåéò. íáò áðáñéèìçôþò åßíáé óôçí ðñáãìáôéêüôçôá ìéá èýóç ìíþìçò (óõíþèùò ìéá ëýîç ôùí äýï Bytes) óå ìéá åéäéêþ ðåñéï Þ ôçò ìíþìçò ôïõ ÐËÅ ç ïðïßá óõíåñãüæåôáé ìå ôéò áíôßóôïé åò åñãáóßåò åéñéóìïý ôùí áðáñéèìçôþí. Ïé ó åôéêýò åñãáóßåò Þ åíôïëýò åßíáé ïé åîþò: ï ìçäåíéóìüò ôïõ áðáñéèìçôþ þóôå íá áñ ßóåé ìéá íýá êáôáìýôñçóç ç ðñïôïðïèýôçóç áñ éêþò ôéìþò óôïí áðáñéèìçôþ, þóôå íá ìçí áñ ßæåé ôç ìýôñçóç áíáãêáóôéêü áðü ôï ìçäýí ç áýîçóç Þ ç ìåßùóç ôçò ôñý ïõóáò ôéìþò, áíüëïãá êáé ìå ôï åßäïò ôïõ áðáñéèìçôþ üðùò áíáöýñèçêå ðáñáðüíù. ç áíüêôçóç (áíüãíùóç Þ åñþôçóç) ôçò ôñý ïõóáò ôéìþò ôïõ áðáñéèìçôþ þóôå ôï ðñüãñáììá ôïõ ÐËÅ íá ëüâåé êüðïéá áðüöáóç Þ íá õðïëïãßóåé êüðïéï Üëëï äåäïìýíï. ÄïìÞ ôçò ëýîçò ôïõ áðáñéèìçôþ 60
ÁðáñéèìçôÝò - ÓõãêñéôÝò ôýò. íá üíïìá áðáñéèìçôþ ð.. C56 äçëþíåé ôáõôü ñïíá êáé ôç èýóç ìíþìçò ðïõ áíôéóôïé åß óå áõôüí ôïí áðáñéèìçôþ. Ôï ó Þìá 5.1 ðáñïõóéüæåé Ýíá ðáñüäåéãìá ëýîçò áðáñéèìçôþ. Ïé ðáñüìåôñïé êáôá ùñïýíôáé ìå åéäéêþ êùäéêïðïßçóç ðïõ åîáñôüôáé áðü ôï óõãêåêñéìýíï êáôáóêåõáóôþ êáé ôýðï ÐËÅ. Óôï óõãêåêñéìýíï ðáñüäåéãìá ç êùäéêïðïßçóç áîéïðïéåß ôá 12 áðü ôá 16 äéáèýóéìá bits. Ôá ðñþôá ôýóóåñá bits ôçò ëýîçò äå ñçóéìïðïéïýíôáé. Ôá õðüëïéðá 12 Bits åêöñüæïõí ôñßá äåêáäéêü øçößá óýìöùíá ìå ôçí êùäéêïðïßçóç BCD. Óôï ðáñüäåéãìá ôïõ ó Þìáôïò ôá øçößá áõôü åßíáé 2, 1 êáé 5. ÅðïìÝíùò, ï áðáñéèìçôþò Ý åé äåêáäéêþ ôéìþ 215. C34 Byte 2 Byte 1 ùñßò óçìáóßá ÔéìÞ ìýôñçóçò êùäéêïðïéçìýíç óå ìïñöþ BCD 0 0 1 0 0 0 0 1 0 1 0 1 2 1 5 215 Ó Þìá 5.1: Êáôá þñçóç äåäïìýíùí óå ëýîç áðáñéèìçôþ Óôï óõãêåêñéìýíï ðáñüäåéãìá ç ùñçôéêüôçôá ôçò ëýîçò ôïõ áðáñéèìçôþ åßíáé ôñßá äåêáäéêü øçößá äçëáäþ ï áðáñéèìçôþò ìðïñåß íá êáôáãñüøåé ôéìýò óôï äéüóôçìá 0-999. Ãåíéêüôåñá, ôá áñéèìçôéêü üñéá ôïõ áðáñéèìçôþ åîáñôþíôáé áðü ôïí áñéèìü ôùí bit ðïõ äéáôßèåíôáé ãéá ôçí êáôá þñçóç ôçò ôñý ïõóáò ôéìþò ìýôñçóçò. Ï ðßíáêáò ôïõ ó Þìáôïò 5.2 êáôùôýñù ðáñïõóéüæåé ìåñéêýò áðü ôéò óõíçèéóìýíåò ðåñéðôþóåéò ïñßùí êáôáìýôñçóçò. Ôñüðïò êáôá þñçóçò óôç ëýîç ôïõ áðáñéèìçôþ ¼ñéá ôéìþí ÐáñÜäåéãìá ( ùñßò ðñüóçìï) ìýôñçóçò ôéìþò Ôñßá äåêáäéêü øçößá óå êùäéêïðïßçóç BCD, áðïôåëïýìåíá 0 Ýùò 999 854 áðü ôýóóåñá bit ôï êáèýíá (óõíïëéêü 12 bit) -500 Ýùò 499-40 ÔÝóóåñá äåêáäéêü øçößá óå êùäéêïðïßçóç BCD, áðïôåëïýìåíá 0 Ýùò 9999 1234 áðü ôýóóåñá bit ôï êáèýíá (óõíïëéêü 16 bit) -5000 Ýùò 4999-2567 ÄÝêá äõáäéêü øçößá (10 bit) 0 Ýùò1023 678-512 Ýùò 511-456 Äþäåêá äõáäéêü øçößá (12 bit) 0-4095 38567-2048 Ýùò 2047-1753 ÄåêáÝîé äõáäéêü øçößá (16 bit) 0-65535 38567-32768 Ýùò 32767-1753 Ó Þìá 5.2: ¼ñéá ôéìþí, áíüëïãá ìå ôïí ôñüðï êáôá þñçóçò ôçò ôéìþò ôïõ áðáñéèìçôþ 61
Ç åíôïëþ ôïðïèýôçóçò áñ éêþò ôéìþò êáôá ùñåß ìéá åðéèõìçôþ ôéìþ óôç ëýîç ôïõ áðáñéèìçôþ. Ç åíôïëþ áõôþ õëïðïéåßôáé óõíþèùò ìå äýï âþìáôá, óå áíáëïãßá ìå ôïí ôñüðï ôïðïèýôçóçò ôçò ôéìþò ôïõ ñüíïõ óôéò ñïíéêýò ëåéôïõñãßåò. ÊáôÜ ôï ðñþôï âþìá, ï êáôá ùñçôþò öïñôþíåôáé ìå ôçí ôéìþ ôïõ ñüíïõ. Ç ðñþôç áõôþ åíôïëþ åßíáé üìïéá ìå ôçí åíôïëþ LOAD ðïõ ñçóéìïðïéåßôáé óôç ìåôáöïñü äåäïìýíùí ìýóù êáôá ùñçôþ. Åöüóïí ñåéüæåôáé, ðñéí áðü ôçí áñéèìçôéêþ ôéìþ ôïðïèåôåßôáé Ýíá óõìâïëéêü üíïìá (ðñüèåìá), ðïõ äçëþíåé ïôé ðñüêåéôáé ãéá ôéìþ ðïõ èá ñçóéìïðïéçèåß óå êáôáìýôñçóç, åðïìýíùò íá ìåôáôñáðåß óå êáôüëëçëç åéäéêþ ìïñöþ áðåéêüíéóçò. Ãéá ðáñüäåéãìá, ç ðáñáêüôù åíôïëþ öïñôþíåé óôïí êáôá ùñçôþ Á ôçí ôéìþ 215. Ôï ðñüèåìá KC óçìáßíåé üôé ç ôéìþ èá êáôá ùñçèåß óôç óõãêåêñéìýíç ìïñöþ ðïõ áðáéôåßôáé ãéá ôïí áðáñéèìçôþ ôïõ ðáñáäåßãìáôïò. ÊáôÜ ôç ìåôáêåöüëáéï 5 5.2 Ëåéôïõñãßåò ôùí áðáñéèìçôþí Ïé åðüìåíåò ðáñüãñáöïé ðáñïõóéüæïõí áíáëõôéêüôåñá ôéò êýñéåò ëåéôïõñãßåò ôùí áðáñéèìçôþí. Ìçäåíéóìüò ôïõ áðáñéèìçôþ Ç åíôïëþ ìçäåíéóìïý êáôá ùñåß ôçí ôéìþ ìçäýí (äçëáäþ äéáãñüöåé ) óôç ëýîç ôïõ áðáñéèìçôþ. Ç åíôïëþ áõôþ óõ íü óõìâïëßæåôáé ìå ôï ãñüììá R (áðü ôïí áããëéêü üñï reset) êáé åßíáé áêñéâþò ßäéá ìå ôçí åíôïëþ RESET ðïõ ñçóéìïðïéåßôáé ãéá ôï ìçäåíéóìü ôùí flip-flop Þ ôùí ñïíéêþí ëåéôïõñãéþí. Ãéá ðáñüäåéãìá, ç ðáñáêüôù åíôïëþ ìçäåíßæåé ôïí áðáñéèìçôþ ìå áýîïíôá áñéèìü 46 (õðïèýôïíôáò üôé ï óõãêåêñéìýíïò ðñïãñáììáôéæüìåíïò ëïãéêüò åëåãêôþò äéáèýôåé ôïõëü éóôïí óáñüíôá-ýîé áðáñéèìçôýò!). R C46 Ôï ó Þìá 5.3 ðáñïõóéüæåé ôçí åðßäñáóç ôçò ðáñáðüíù åíôïëþò óôç ëýîç (èýóç ìíþìçò), ðïõ áíôéóôïé åß óôïí áðáñéèìçôþ C46. Ôï ó Þìá áðåéêïíßæåé ôï ðåñéå üìåíï ôçò ìíþìçò ðñéí êáé ìåôü ôçí åêôýëåóç ôçò åíôïëþò. ËÝîç áðáñéèìçôþ C46 ùñßò óçìáóßá ÔéìÞ ìýôñçóçò êùäéêïðïéçìýíç óå ìïñöþ BCD Ðñéí ôçí åêôýëåóç ôçò åíôïëþò 0 0 1 0 0 0 0 1 0 1 0 1 ìåôü ôçí åêôýëåóç ôçò åíôïëþò 0 0 0 0 0 0 0 0 0 0 0 0 0 (ìçäýí) Ó Þìá 5.3: Ìçäåíéóìüò áðáñéèìçôþ ÔïðïèÝôçóç áñ éêþò ôéìþò 62
ÁðáñéèìçôÝò - ÓõãêñéôÝò ôñïðþ ï åðåîåñãáóôþò ôïõ ÐËÅ åëýã åé üôé ç ôéìþ åßíáé åðéôñåðôþ, äçëáäþ üôé âñßóêåôáé åíôüò ôùí ïñßùí ôéìþí ãéá ôï óõãêåêñéìýíï åßäïò áðáñéèìçôþ, êáé, óå áíôßèåôç ðåñßðôùóç, ôçí ðñïóáñìüæåé Þ ðñïêáëåß ìþíõìá óöüëìáôïò åêôýëåóçò. LDA KC215 Óôï äåýôåñï âþìá ç ôéìþ ìåôáöýñåôáé áðü ôïí êáôá ùñçôþ óôç ëýîç ôïõ áðáñéèìçôþ. ÁõôÞ ç åíôïëþ åßíáé üìïéá ìå ôçí åíôïëþ STORE ðïõ ñçóéìïðïéåßôáé óôç ìåôáöïñü äåäïìýíùí ìýóù êáôá ùñçôþ. Ç åðüìåíç åíôïëþ ôïðïèåôåß óôïí áðáñéèìçôþ C46 ôçí áñ éêþ ôéìþ ðïõ âñßóêåôáé óôïí êáôá ùñçôþ Á. STA C46 Ôï ó Þìá 5.4 ðáñïõóéüæåé ôçí åðßäñáóç ôçò ðáñáðüíù äéáäéêáóßáò óôïí êáôá ùñçôþ Á êáé óôç ëýîç (èýóç ìíþìçò) ðïõ áíôéóôïé åß óôïí áðáñéèìçôþ C46. Ôï ó Þìá áðåéêïíßæåé ôï ðåñéå üìåíï ôçò ìíþìçò ðñéí êáé ìåôü ôçí åêôýëåóç ôùí ó åôéêþí åíôïëþí. Êáôá ùñçôþò Á Ðñéí ôçí åêôýëåóç ôçò åíôïëþò LDA 1 0 0 1 0 0 1 0 1 0 1 1 0 1 0 1 ôõ áßá áñéèìçôéêþ ôéìþ 16 bit Êáôá ùñçôþò Á ìåôü ôçí åêôýëåóç ôçò åíôïëþò LDA 1 0 0 1 0 0 1 0 0 0 0 1 0 1 0 1 üðùò ðñéí ËÝîç áðáñéèìçôþ C46 Ðñéí ôçí åêôýëåóç ôçò åíôïëþò STA 0 0 0 0 0 0 1 0 0 0 0 1 0 1 0 1 0 (ð.. ìåôü áðü ìçäåíéóìü) ËÝîç áðáñéèìçôþ C46 ìåôü ôçí åêôýëåóç ôçò åíôïëþò STA 0 0 0 0 0 0 1 0 0 0 0 1 0 1 0 1 áäéüöïñá Ó Þìá 5.4: ÔïðïèÝôçóç áñ éêþò ôéìþò óå áðáñéèìçôþ Áýîçóç ôçò ôñý ïõóáò ôéìþò Ç åíôïëþ áýîçóçò ðñïóèýôåé óôçí ôñý ïõóá ôéìþ ôïõ áðáñéèìçôþ ìéá ìïíüäá. Ç åíôïëþ áõôþ óõ íü Ý åé ôï óõìâïëéêü üíïìá ãñüììá CU (áðü ôïí áããëéêü üñï Counter Up). Ãéá ðáñüäåéãìá, ç ðáñáêüôù åíôïëþ áõîüíåé ôçí ôéìþ ôïõ áðáñéèìçôþ ìå áñéèìü 46. CU C46 Ôï ó Þìá 5.5 ðáñïõóéüæåé ôçí åðßäñáóç ôçò ðáñáðüíù åíôïëþò óôç ëýîç (èýóç ìíþìçò) ðïõ áíôéóôïé åß óôïí áðáñéèìçôþ C46. Ôï ó Þìá áðåéêïíßæåé ôï ðåñéå üìåíï ôçò ìíþìçò ðñéí êáé ìåôü ôçí åêôýëåóç ôçò åíôïëþò. 63
êåöüëáéï 5 ËÝîç áðáñéèìçôþ C46 ùñßò óçìáóßá ÔéìÞ ìýôñçóçò êùäéêïðïéçìýíç óå ìïñöþ BCD Ðñéí ôçí åêôýëåóç ôçò åíôïëþò 0 0 1 0 0 0 0 1 0 1 0 1 ìåôü ôçí åêôýëåóç ôçò åíôïëþò 0 0 1 0 0 0 0 1 0 1 1 0 216 (ìïñöþ BCD) Ó Þìá 5.5: Áýîçóç ôçò ôñý ïõóáò ôéìþò Ìåßùóç ôçò ôñý ïõóáò ôéìþò Ç åíôïëþ ìåßùóçò áöáéñåß áðü ôçí ôñý ïõóá ôéìþ ôïõ áðáñéèìçôþ ìéá ìïíüäá. Ç åíôïëþ áõôþ óõ íü Ý åé ôï óõìâïëéêü üíïìá ãñüììá CD (áðü ôïí áããëéêü üñï Counter Down). Ãéá ðáñüäåéãìá, ç ðáñáêüôù åíôïëþ ìåéþíåé ôçí ôéìþ ôïõ áðáñéèìçôþ ìå áñéèìü 46. CD C46 Ôï ó Þìá 5.6 ðáñïõóéüæåé ôçí åðßäñáóç ôçò ðáñáðüíù åíôïëþò óôç ëýîç (èýóç ìíþìçò) ðïõ áíôéóôïé åß óôïí áðáñéèìçôþ C46. Ôï ó Þìá áðåéêïíßæåé ôï ðåñéå üìåíï ôçò ìíþìçò ðñéí êáé ìåôü ôçí åêôýëåóç ôçò åíôïëþò. ËÝîç áðáñéèìçôþ C46 ùñßò óçìáóßá ÔéìÞ ìýôñçóçò êùäéêïðïéçìýíç óå ìïñöþ BCD Ðñéí ôçí åêôýëåóç ôçò åíôïëþò 0 0 1 0 0 0 0 1 0 1 0 1 ìåôü ôçí åêôýëåóç ôçò åíôïëþò 0 0 1 0 0 0 0 1 0 1 0 0 214 (ìïñöþ BCD) Ó Þìá 5.6: Ìåßùóç ôçò ôñý ïõóáò ôéìþò 64
ÁðáñéèìçôÝò - ÓõãêñéôÝò ÁíÜêôçóç ôçò ôñý ïõóáò ôéìþò Ç ôñý ïõóá ôéìþ åíüò áðáñéèìçôþ ìðïñåß íá ñçóéìïðïéçèåß, óôïí ðñïãñáììáôéóìü ìå äýï äéáöïñåôéêïýò ôñüðïõò. Ï ðñþôïò åßíáé ìåôáöïñü ôçò ôéìþò óå Ýíáí êáôá ùñçôþ Þ ìéá èýóç ìíþìçò, üðïõ èá ãßíåé ç ðåñáéôýñù åðåîåñãáóßá ôçò ôéìþò ð.. ç óýãêñéóç ôçò ôñý ïõóáò ôéìþò ìå ìéá Üëëç Þ ï õðïëïãéóìüò ôçò äéáöïñüò ôçò áðü ìéá Üëëç êëð. Ç áíüêôçóç ãßíåôáé ìå ôéò ãíùóôýò åíôïëýò Üìåóçò ìåôáöïñüò Þ ìåôáöïñüò ìýóù êáôá ùñçôþ. Ç ðáñáêüôù åíôïëþ ìåôáöýñåé ôçí ôéìþ ôïõ áðáñéèìçôþ C46 óôç èýóç ìíþìçò DW187. MOV C46 DW187 Ï äåýôåñïò ôñüðïò áíüêôçóçò ôçò ôñý ïõóáò ôéìþò åßíáé ç ñþóç ôïõ áðáñéèìçôþ ùò ëïãéêþ ìíþìç ðïõ ðáßñíåé äýï ôéìýò: ØåõäÞò (ìçäýí), åöüóïí ç ôñý ïõóá ôéìþ åßíáé ìçäýí êáé ÁëçèÞò (Ýíá) óå êüèå Üëëç ðåñßðôùóç. ôóé, ôï ðáñáêüôù áðüóðáóìá ðñïãñüììáôïò åëýã åé åüí ï áðáñéèìçôþò C46 Ý åé ìçäåíéóèåß êáé åíåñãïðïéåß ôç ëïãéêþ Ýîïäï Q3.4. AÍ C46 S Q3.4 5.3 Åßäç êáé ëåéôïõñãßá ôùí óõãêñéôþí ÊáôÜ ôïí ðñïãñáììáôéóìü ôùí ÐËÅ ñåéüæåôáé óõ íü ç ëþøç áðïöüóåùí ìå âüóç ôç óýãêñéóç ìåôáîý äýï ôéìþí. íá ðñüãñáììá ð.. ãéá ôïí Ýëåã ï ôïõ êëéìáôéóìïý ìðïñåß íá åíåñãïðïéåß ôçí øýîç üôáí ç èåñìïêñáóßá ôïõ þñïõ åßíáé ìåãáëýôåñç áðü ôçí ðñïêáèïñéóìýíç åðéèõìçôþ èåñìïêñáóßá. Ãéá áõôü ôï ëüãï üëïé ïé ÐËÅ äéáèýôïõí Ýôïéìåò åíôïëýò ãéá ôç óýãêñéóç ðïõ ïíïìüæïíôáé óõãêñéôýò (comparators). ÁíÜëïãá ìå ôï åßäïò ôçò ó Ýóçò ðïõ åîåôüæïõí ïé óõãêñéôýò, äéáêñßíïíôáé óôïõò åîþò ôýðïõò: ßóïí = äéáöïñåôéêü <> ìåãáëýôåñï > ìåãáëýôåñï Þ ßóï >= ìéêñüôåñï < ìéêñüôåñï Þ ßóï <= Ïé ðåñéóóüôåñïé ôýðïé ðñïãñáììáôéæüìåíùí ëïãéêþí åëåãêôþí äéáèýôïõí åíôïëýò ãéá üëåò áõôü ôá åßäç óõãêñßóåùí. Ç ðéï äéáäåäïìýíç ìïñöþ åíôïëþò óýãêñéóçò åßíáé ç óýãêñéóç ìýóù êáôá ùñçôþí. Óôçí ðåñßðôùóç áõôþ ç åíôïëþ óýãêñéóçò óõãêñßíåé ôá ðåñéå üìåíá äýï óõãêåêñéìýíùí êáôá ùñçôþí ðüíôá ôùí ßäéùí. ÄçëáäÞ ç óýãêñéóç äýï ôéìþí ãßíåôáé óå ôñßá âþìáôá: öüñôùóç ôïõ ðñþôïõ êáôá ùñçôþ, öüñôùóç ôïõ äåýôåñïõ êáé, ôýëïò, êáèáõôü óýãêñéóç êáé áðüöáóç. Ïé ðáñáêüôù åíôïëýò åîåôüæïõí åüí ç ôñý ïõóá ôéìþ ôçò ëýîçò DW165 åßíáé ìéêñüôåñç áðü ôçí ôñý ïõóá ôéìþ ôçò ëýîçò DW274 êáé, åöüóïí áõôü åðáëçèåýåôáé, åíåñãïðïéïýí ôçí Ýîïäï Q3.2. LDA DW165 LDB DW274 <=? S Q3.2 65
êåöüëáéï 5 ÊáôÜ ôï ðñþôï âþìá, ï ðñþôïò êáôá ùñçôþò öïñôþíåôáé ìå ôçí ôéìþ ôçò ëýîçò DW165. Óôï äåýôåñï âþìá, ï äåýôåñïò êáôá ùñçôþò öïñôþíåôáé ìå ôçí ôéìþ ôçò ëýîçò DW274. Óôï ôñßôï âþìá, ç åíôïëþ óýãêñéóçò åîåôüæåé åüí ôï ðåñéå üìåíï ôïõ êáôá ùñçôþ Á åßíáé ìéêñüôåñï áðü åêåßíï ôïõ êáôá ùñçôþ Â. ÅÜí áõôü åðáëçèåýåôáé, ôï ëïãéêü áðïôýëåóìá åßíáé áëçèýò, ïðüôå åêôåëåßôáé ç áìýóùò åðüìåíç åíôïëþ åíåñãïðïßçóçò ôçò åîüäïõ. Óå áõôü ôï ðáñüäåéãìá Ýììåóá õðïèýôïõìå üôé ï óõãêåêñéìýíïò ôýðïò ÐËÅ ñçóéìïðïéåß ôïõò êáôá ùñçôýò Á êáé  ãéá üëåò ôéò åíôïëýò óýãêñéóçò. Ç óåéñü ìå ôçí ïðïßá ñçóéìïðïéïýíôáé ïé êáôá ùñçôýò èá åßíáé ðüíôïôå ßäéá ãéá üëåò ôéò åíôïëýò óýãêñéóçò, äçëáäþ åëýã åôáé åüí ï êáôá ùñçôþò Á åßíáé ìåãáëýôåñïò áðü ôïí  êáé ü é áíüóôñïöá. Ï ðßíáêáò ôïõ ó Þìáôïò 5.6 áíáöýñåé ôç ëåéôïõñãßá ôçò óýãêñéóçò ãéá ôïí õðïèåôéêü ÐËÅ ôïõ ðáñáäåßãìáôïò. ÅíôïëÞ Ôï ôñý ïí ëïãéêü áðïôýëåóìá åßíáé ÁëçèÝò åüí =? ôï ðåñéå üìåíï ôïõ êáôá ùñçôþ Á åßíáé ßóï ìå ôï ðåñéå üìåíï ôïõ êáôá ùñçôþ  <>? ôï ðåñéå üìåíï ôïõ êáôá ùñçôþ Á åßíáé äéáöïñåôéêü áðü ôï ðåñéå üìåíï ôïõ êáôá ùñçôþ  >? ôï ðåñéå üìåíï ôïõ êáôá ùñçôþ Á åßíáé ìåãáëýôåñï áðü ôï ðåñéå üìåíï ôïõ êáôá ùñçôþ  >=? ôï ðåñéå üìåíï ôïõ êáôá ùñçôþ Á åßíáé ìåãáëýôåñï Þ ßóï ìå ôï ðåñéå üìåíï ôïõ êáôá ùñçôþ  <? ôï ðåñéå üìåíï ôïõ êáôá ùñçôþ Á åßíáé ìéêñüôåñï áðü ôï ðåñéå üìåíï ôïõ êáôá ùñçôþ  <=? ôï ðåñéå üìåíï ôïõ êáôá ùñçôþ Á åßíáé ìéêñüôåñï Þ ßóï ìå ôï ðåñéå üìåíï ôïõ êáôá ùñçôþ  Áñêåôïß ôýðïé ÐËÅ äå äéáèýôïõí ùñéóôýò åíôïëýò öüñôùóçò ãéá êüèå êáôá ùñçôþ, äçëáäþ LDA, LDB, LDC êëð., áëëü ìéá åíéáßá åíôïëþ öüñôùóçò LD óôçí ïðïßá äåí ðñïóäéïñßæåôáé óõãêåêñéìýíïò êáôá ùñçôþò. Áõôü äå óçìáßíåé üôé ï áíôßóôïé ïò ðñïãñáììáôéæüìåíïò åëåãêôþò äéáèýôåé Ýíá ìïíáäéêü êáôá ùñçôþ, áëëü üôé ïé äéáäï éêýò ôéìýò êáôáíýìïíôáé óôïõò êáôá ùñçôýò áõôüìáôá. Óôçí ðåñßðôùóç áõôþ, ç óåéñü ôùí êáôá ùñçôþí êáèïñßæåôáé áðü ôç óåéñü åêôýëåóçò ôùí åíôïëþí öüñôùóçò. ÄçëáäÞ åüí õðüñ ïõí äýï êáôá ùñçôýò, ç ôåëåõôáßá åíôïëþ öüñôùóçò ðïõ åêôåëýóèçêå áöïñü ðüíôá óôïí êáôá ùñçôþ  êáé ç ðñïôåëåõôáßá ðüíôá óôïí êáôá ùñçôþ Á. ôóé, ãéá Ýíáí ÐËÅ áõôþò ôçò êáôçãïñßáò ôï ßäéï ðñüãñáììá, üðùò ðáñáðüíù, èá ìðïñïýóå íá ãñáöåß: LD DW165 LD DW274 <=? S Q3.2 ¼ôáí ç åêôýëåóç ôïõ ðñïãñüììáôïò öèüóåé óôï ôñßôï âþìá, ç ðëýïí ðñüóöáôç åíôïëþ êáôá þñçóçò åßíáé ç LD DW274. ÅðïìÝíùò ç ôéìþ ôçò ëýîçò DW274 Ý åé áðïèçêåõôåß óôïí êáôá ùñçôþ  ( ùñßò ôï ðñüãñáììá íá áíáöýñåé ñçôü ôï üíïìá ôïõ êáôá ùñçôþ). Ç áìýóùò ðñïçãïýìåíç åíôïëþ êáôá þñçóçò åßíáé ç LD DW165. ÅðïìÝíùò ç ôéìþ ôçò ëýîçò áõôþò Ý åé áðïèçêåõôåß óôïí êáôá ùñçôþ Á. ñá ç ëåéôïõñãßá ôïõ ðñïãñüììáôïò åßíáé éóïäýíáìç ìå áõôþí ôïõ ðñïçãïýìåíïõ ðáñáäåßãìáôïò. 66