Professional Documents
Culture Documents
Instruksionet Për Bartje Të Dhënash Dhe Operacionet Me Vargjet (Stringje)
Instruksionet Për Bartje Të Dhënash Dhe Operacionet Me Vargjet (Stringje)
8086
Procesori 8086 disponon qindra instruksione, te cilet mund te ndahen ne disa grupe:
Instruksionet per bartjen e te dhenave
Instruksionet aritmetike
Instruksionet per zhvendosje dhe rotacion
Instruksionet logjike
Instruksionet per udheheqje me kercimet
Instruksionet per pune me vargjet
Instruksionet per pune me nen programet dhe nderprerjet
Instruksionet per kontroll te mikroprocesorit
Shembulli 8.1.
Shembulli 8.2.
PUSH BX - e dhena eshte ne ndonje regjister te pergjithshem
PUSH [BX] - e dhena eshte ne lokacionin memories e larguar nga fillimi i segmentit te
dhenes per distance te barabarte me vleren e BX
PUSH 1225H - e dhena eshte dhene ne menyre imediate
PUSH DS - e dhena eshte ne ndonje regjister segment
PUSH A - mbrohen te dhenat ne te gjithe regjistrat e pergjithshem 16-bitesh
PUSH F - mbrohet statut-regjistri me fl amujt e tij
XLAT (Translate) Ky instruksion perdoret gjate konversionit nga nje kod ne tjetrin, si, p.sh,
nga BCD ne kod shtate segmentesh. Ne segmentin e te dhenave eshte krijuar vargu prej 20
bajtesh, te cilet i permbajne kodet shtate segmentesh per fj alet nga 0 deri te 9. Ne
fotografin 8.10. jane paraqitur ekranin shtate segmentesh dhe kodet e tij. Me instruksion
XLAT permbajtja e AL i shtohet prodhimit per te fituar adrese te lokacionit memories ne
segmentin e te dhenave, pastaj permbajtja nga ai lokacion memories kopjohet ne regjistrin
AL.
Figura 8.10. Vargu i te dhenave per aktivizimin e ekranin shtate segmentesh
XCHG (Exchange) Ky instruksion sherben per shkembimin e permbajtjes se nje regjistri me
tjeter ose me ndonje lokacion memories. Ky instruksion memories nuk mund te perdoret
per shkembimin e permbajtjes te dy lokacioneve ose segment regjistrave.
Instruksionet IN dhe OUT perdoren gjate punes me portat hyrese-dalese. Me instruksion
IN e dhena nga porta hyrese bartet ne akumulator, me instruksion OUT e dhena nga
akumulatori bartet tek porta dalese. Ekzistojne dy lloje instruksionesh per pune me portat.
Tek tipi i pare portat kane adresa fikse. Nderfaqe-adresa paraqet kombinacion 8-bitesh
dhe ajo zgjerohet ne 16-bit me shtimin e tete zerove nga ana e majte. P.sh, me instruksion
OUT 19Н, AX permbajtja e regjistrit AX bartet tek porta dalese me adrese fikse 0019Н. Tek
tipi i dyte i instruksioneve per pune me portat, portat kane adresa te ndryshueshme-
ndryshoreve. Adresa e portes ruhet ne regjistrin DX, ndersa e dhena qe duhet te bartet ose
te pranohet nga porta ne regjistrin AL ose AX. Gjate kohes se ekzekutimit te programit
permbajtja e DX, perkatesisht adresa e portes mund te ndryshohet.
Shembulli 8.3:
OUT DX, AL ;E dhena nga regjistri AL bartet tek
;porta dalese me adrese ne regjistrin DX.
IN AL, DX ;E dhena nga porta hyrese me adrese ne regjistrin
;DX bartet ne regjistrin AL te mikroprocesorit.
8.6.2 Operacionet me vargjet (stringje)
Vargu paraqet bashkesi te dhenash te vendosur ne lokacione te memories te
njepasnjeshme nga segmenti i te dhenave ose segmenti i vecante-ekstra. Ne njerin segment
jane te vendosur te dhenat qe duhet te perpunohen, dhe ne segmentin tjeter te dhenat e
fituara si rezultat i operacioneve te kryera. Indeks-regjistrat DI dhe SI jane regjistra qe e
permbajne zhvendosjen. Regjistri DI perdoret ne cift me segment regjistrin ES, ndersa SI ne
cift me DS. Per kryerjen e operacioneve me vargje shume e rendesishme eshte fl amuri D.
Nese D=0, vlera e regjistrit DI dhe SI automatikisht zvogelohet per nje, nese D=1 do te rritet
per nje. Instruksioni CLD ( Clear D ) e ristarton kete fl amur, ndersa instruksioni STD (Set
D) e seton.