Învățați să programați

M. Ivanyushin

plus
Pentru a adăuga numere de un singur octet în setul de instrucțiuni microprocesor KP580VM80A, există comenzi standard ADD și ADC, adăugând numere de octeți dublu folosind comanda DAD. Dar dacă numerele adăugate depășesc două octeți, atunci trebuie să scrieți un program special pentru adăugare. Următorul program adaugă numere de trei octeți:







scădere
Pentru scădere, există două comenzi SUB și SBB în setul de instrucțiuni al microprocesorului, acestea funcționează numai cu octeți, pentru a procesa aceleași numere multibyte, trebuie să scrieți programul. Se poate organiza scăderea unui număr de două octeți de la alta, de exemplu, astfel:

Pentru a calcula diferența dintre numerele de trei octeți, puteți utiliza următorul program:

multiplicare
Microprocesorul KR580VM80A nu are instrucțiuni de multiplicare, astfel încât pentru a executa această operație matematică este necesar să compilați programul.

Programul prezentat aici funcționează în conformitate cu următorul algoritm:
Pasul 1. Verificați bitul mic al multiplicatorului. Dacă este zero, mergeți la pasul 3, dacă la unul - adunați multiplicatorul cu rezultatul intermediar al înmulțirii.
Pasul 2. Deplasați rezultatul intermediar rezultant cu un bit spre stânga.
Pasul 3. Repetați pașii 1 și 2 până când toate biții multiplicatorului sunt bifați.

În linia cu eticheta SHAG3, verificarea zero-zero se efectuează utilizând operația logică OR a bateriei cu ea însăși. Această operație nu modifică conținutul bateriei, ci stabilește toate atributele. Puteți verifica conținutul bateriei la zero utilizând comanda CPI 00, dar această comandă ocupă mai mult spațiu în memorie și durează mai mult.







diviziune
Există mai mulți algoritmi de diviziune, pe care le puteți familiariza cu ele în literatura de specialitate privind tehnologia informatică. Vom lua în considerare cel mai simplu algoritm.
Diviziunea propusă a programului funcționează după cum urmează: se subtracts secvențial divizorul de dividendului prin numărarea numărului de scăderi până la decrementat de fiecare dată după o valoare scădere a dividendului este zero sau mai mică decât zero. În cazul în care valoarea dividendului este zero, înseamnă că diviziunea fără rest, și corespunde numărului de scăderi private. Dacă valoarea dividendului este mai mică decât zero, atunci trebuie să calculați suma restului. Se calculează prin adăugarea valorii divizorului la valoarea curentă a dividendului.

Conversia numerelor
Utilizatorii obișnuiți să lucreze cu zecimale, și calculatoare funcționează numai cu binar, deci, dacă doriți să se afișeze rezultatele computerului ca zecimal, sau de a converti numere de intrare zecimale în format binar, sunt necesare programe speciale.
În calcul, există conceptul de număr zecimal binar. Numărul BCD este un număr, în care fiecare patru biți reprezintă cifra zecimală de la 0 la 9. De exemplu, numărul binar 00001111 binar codificat sub formă zecimală la 00010101.
Esența programului descris pentru conversia unui număr binar în zecimale binare este că este un număr binar, care în forma obișnuită arată astfel:

Observați cum în linia etichetă CONV: registrul A este setat la zero. Operația EXCLUSIVE OR a bateriei cu ea însăși va reseta și va reseta și bitul de transfer.
Programele de mai sus sunt utile dacă trebuie să afișați rezultatele calculelor. Și ce se întâmplă dacă trebuie să convertiți un număr zecimal cu un singur octet sau două octeți la binar? Nu e greu. Pentru a face acest lucru, selectați biții care definesc zeci de mii, și le înmulțește cu 10.000, iar apoi selectați biții care definesc mii, și se înmulțește cu 1000 pentru a aloca sute și se înmulțește cu 100, pentru a aloca zeci și se înmulțește cu 10, și în cele din urmă selectați unul. Adăugarea tuturor acestor numere va da rezultatul dorit.
Toate aceste acțiuni sunt efectuate de următorul program.

Cumpărați metronomul TM de înaltă precizie TM MetronX într-o gamă largă.







Articole similare

Trimiteți-le prietenilor: