Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
Renault Android

Recomandare bicicleta e-bike 20&#...

Bing-Content removal tool

Nu pot accesa monitorulsv.ro de l...
 Cum sa elimini urmele de acnee?

Wc Geberit

Routere detinute in trecut si in ...

Teii din fața casei
 E-Mail in serie prin Excel si Out...

Modul alimentare rulou/jaluzea ex...

Recuperare fișiere dupa form...

Aplicatii stress test RAM
 Asigurare auto hibrid

Asus B550M - PC-ul nu porneste di...

Tzanca Uraganu - Inconjurat de Fe...

explicatie montaj breadboard
 

8086 Afisare patrat cu latura arbitrara

- - - - -
  • Please log in to reply
1 reply to this topic

#1
DocH

DocH

    New Member

  • Grup: Candidate Members
  • Posts: 1
  • Înscris: 15.06.2022
Buna ziua! Am un proiect de terminat si sunt cam pe ultima suta de metrii. Am de facut chestia asta in emu8086. Am incercat ceva insa nu face tocmai ce ar trebui sa faca si as dori niste directive/sfaturi .

Cerinta este urmatoarea :
            Scrieti un program care sa primeasca de la tastatura un numar N, intre 1 si 9. Programul va afisa pe ecran un patrat cu latura N, umplut cu caractere '*' ,coltul stanga sus fiind pe randul 10, coloana 10.

Attached Files



#2
sags

sags

    Senior Member

  • Grup: Senior Members
  • Posts: 9,845
  • Înscris: 24.04.2013
Drept sa spun amintirile mele pe acest subiect s-au cam estompat, dar ce se cam vede asa din avion:
  • Ce cittesti de la stdin sunt coduri de caractere (sau probabil un singur cod, nu mai stiu numere de functii de la int 21h). Inainte de a-l putea folosi drept contor, acest cod trebuie transformat intr-un numar intreg asa cum e necesar procesorului. Aici e simplu fiindca ai numere de o singura cifra. Cum cifrele '0''9' au codurile ASCII 0x300x39 trebuie sa scazi '0' (0x30) din cod si obtii intregul.
  • Ca patratul sa inceapa din coloana 10, dupa CR LF trebuie sa mai scrii si niste spatii.
  • Din linia 10 nu prea vad cum ar putea sa inceapa cu functiile int 21h, fiindca din ce imi amintesc nu ai operatii de pozitionare cursor. Ce poti face, ramanad totusi la int 21h:
    • scrii 10 × CR LF la inceput sa ai linii goale,
    • apoi scrii patratul, indentat cat trebuie cu spatii
    • si la sfarsit, presupunand ca stii numarul de linii ale consolei (de exemplu 25) mai scrii cate linii goale sunt necesare ca sa faca scroll si patratul sa se pozitioneze unde cere problema.
  • Linia 10’ metoda 2: DACA terminalul suporta comenzi de pozitionare cursor, de genul VT100 (sunt niste secvente de caractere care incep cu ESC), le folosesti pe acelea.
  • Totusi metoda cea mai buna pentru ‘linia 10’: treci pe int 10h, functiile BIOS, ca din ce mi-aduc aminte acolo exista pozitionare cursor.


Anunturi

Chirurgia endoscopică a hipofizei Chirurgia endoscopică a hipofizei

"Standardul de aur" în chirurgia hipofizară îl reprezintă endoscopia transnazală transsfenoidală.

Echipa NeuroHope este antrenată în unul din cele mai mari centre de chirurgie a hipofizei din Europa, Spitalul Foch din Paris, centrul în care a fost introdus pentru prima dată endoscopul în chirurgia transnazală a hipofizei, de către neurochirurgul francez Guiot. Pe lângă tumorile cu origine hipofizară, prin tehnicile endoscopice transnazale pot fi abordate numeroase alte patologii neurochirurgicale.

www.neurohope.ro

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

Forumul Softpedia foloseste "cookies" pentru a imbunatati experienta utilizatorilor Accept
Pentru detalii si optiuni legate de cookies si datele personale, consultati Politica de utilizare cookies si Politica de confidentialitate