Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem keil

prosím vás viem mi dakto pomoct z príkazmi
od adresy 40h načitajte čísla tak že prve číslo je 0AH posledne čislo bude 0FH zvyšujú sa o 1 urobte ich sucet a ulozte na 30H a priemer ulozte na 31H za kazdu radu dakujem

Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
ja som ho vobec nepochopil
mato.mato 15.06.2015 18:57
mato.mato
Tak si najprv pozri text original zadania, a ne skomoleny nezmysel, a potom to naprogramuj. Cely rok… nový
MM.. 15.06.2015 19:05
MM..
to zadanie je tak napisane ako som ho dostal od ucitelky a pouzivame prikazi MOV ADD atd... nový
mato.mato 15.06.2015 19:15
mato.mato
To nie su prikazy ale instrukcie assembleru. Potom ale nepotrebujes ziaden keil (to je prekladac z C… nový
MM.. 15.06.2015 19:28
MM..
.. pozeram ze na tom webe nie su uvedene instrukcie pre test, test dvoch registrov a skok ak neni ro… nový
MM.. 15.06.2015 19:32
MM..
dik za radi daco hadam spravim zajtra v skole nový
mato.mato 15.06.2015 19:37
mato.mato
chjo. MOV R0, #40H ;adresa MOV R1, #0 ;sucet MOV R2, #0 ;pocet EsteNebolo0A: MOVX A, @R0 INC R0 CJN… nový
MM.. 15.06.2015 19:43
MM..
velmo pekne dakujem poslední
mato.mato 15.06.2015 19:52
mato.mato

Tak si najprv pozri text original zadania, a ne skomoleny nezmysel, a potom to naprogramuj. Cely rok si na hodinach robil co?

Zadavatela sa opytas aj jaky datovy typ maju tie "cisla", ak ti povie bajt tak ho upozornis ze len imbecil bude ukladat sucet cisel do bajtu, nasledne si urobis smernik napr. pre bajt bude
unsigned char sucet = 0, pocet = 0;
unsigned char *p;
p=0x40;
while(*p!=0x0A) p++;
while(*p!=0x0F) { p++; sucet += *p; pocet++; }

p=0x30;
*p++ = sucet;
*p = sucet/pocet;

To nie su prikazy ale instrukcie assembleru. Potom ale nepotrebujes ziaden keil (to je prekladac z C jazyka).

Tak si to naprogramuj instrukciami. Priradis si napr. do DPTR registra (ak to ma byt v externej pamati) alebo do akehokolvek registra (napr. R0) hodnotu 40h instrukciou MOV, a intrukciou MOVX si nacitavas bajty trebars do R1, a testujes si R1 a ak uz bolo 0Ah tak priratavas do suctu (sucet bude v registri R2 napriklad). testujes nacitany bajt a skaces podla toho co v nom bolo.
Robit domace ulohy za teba nebudem, studuj instrukce.php

chjo.
MOV R0, #40H ;adresa
MOV R1, #0 ;sucet
MOV R2, #0 ;pocet

EsteNebolo0A:
MOVX A, @R0
INC R0
CJNE A, #0AH, EsteNebolo0A

EsteNebolo0F:
ADD R1, A ;pridaj do suctu
INC R2 ;zvys pocet
MOVX A, @R0
INC R0
CJNE A, #0FH, EsteNebolo0F

ADD R1, A ;pridaj aj to posledne 0F do suctu
INC R2 ;zvys pocet

MOV R0, #30H
MOVX @R0, R1 ;sucet

INC R0
MOV A, R1
MOV B, R2
DIVAB
MOVX @R0, A ;priemer

Tak dajak zhruba, mozu tam byt nepresnosti ptz predpotopnu 8051 som nevidel asi 15rokov

Zpět do poradny Odpovědět na původní otázku Nahoru