Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Zeichenkette eingeben und Häufigkeit der einzelnen Zeichen ausgeben

Frage Entwicklung Assembler

Mitglied: pulse

pulse (Level 2) - Jetzt verbinden

23.05.2007, aktualisiert 31.05.2007, 9852 Aufrufe, 4 Kommentare

Hallo administrator.de-Community

ich habe im jetzigen Semester ASM-Programmierung und als Aufgabe wurde uns aufgegeben ein Programm zu schreiben,
welches eine eingegebene Zeichenkette einliest und die Häufigkeit der jeweiligen Zeichen ausgibt.
Also z.b. wie oft ein a vorkommt, ein b etc.

Leider kam bei mir noch nicht die Erleuchtung in dieser Programmiersprach, da ich vorher nur C/C++ programmiert hab.

Hier der Ansatz:
http://endzeit.twinsbyte.de/storage/AUFG2.ASM

Dort wird die Zeichenketten eingelesen und die Zeichen werden sortiert.
Aber wie kann ich jetzt die Zeichen zählen und dann ausgeben?
Hat jemand eine gute Idee?


Chris
Mitglied: miniversum
23.05.2007 um 18:00 Uhr
Dein Makro zur Ausgabe ist leider ncith mit dabei. Aber dort müßtest du ja auch nach einem Bestimmten Zeichen suchen was dir das Ende der Ausgabe angibt.
Genauso würde ich das auch machen.
Den Text Buchstabe für Buchstabe durchgehen (z.B. jeweils in BL). Hinterlege den Buchstaben in einem Register (z.B. CL) und einen Zählwert dafür in einem Zweiten (z.B. CH). Den Sortierten Text gehst du an durch und machst eine Prüfung mit bedingem Sprung. Unterscheidet sich der aktuelle Buchstabe (BL) von dem Wert im Register (CL) gibst du den Buchstaben im Register (CL) und den Zählwert dazu (CH) aus. Dann schreibst du den neuen Buchstaben von BL nach CL (mov CL, BL) und setzt den wert dazu auf eins (mov CH, 1). Ist der aktuelle Buchstabe (BL) gleich dem Letzten (CL) dann erhöhst du einfach nur den Zählwert um 1 (ADD CH, 1). So machst du die ganze Zeichenkette des Sortieren Textes durch. Wenn dann ein Definiertes Ende des Sortieren Textes kommt (durch ein Zeichen was nicht im Alphabet ist) kansnt dud as Programm beenden.

miniversum
Bitte warten ..
Mitglied: pulse
23.05.2007 um 18:53 Uhr
danke miniversium für diese erleuchtung :D
jetz muss ich nur noch wissen wie man das programmiert,
aber aller anfang ist schwer
wär schön wenn ich mich diesbezüglich vielleicht bei dir melden könnte, wenn ich probleme bei der umsetung hab^^
Bitte warten ..
Mitglied: miniversum
23.05.2007 um 19:10 Uhr
Hast du die Textausgabe auf dem Bildschirm selbst programmiert? das funktioniert so ähnlich. Da wird auch jedes Zeichen einzelnnach einander auf dem Bildschirm ausgegeben.
Schreib einfachhier was du hast dann.
miniversum
Bitte warten ..
Neuester Wissensbeitrag
Router & Routing

192.168er Adresse im öffentlichen Netz

(2)

Erfahrungsbericht von visco-c zum Thema Router & Routing ...

Heiß diskutierte Inhalte
Zusammenarbeit
Als Administrator im Großraumbüro (29)

Frage von Dopamin85 zum Thema Zusammenarbeit ...

Exchange Server
Test-ActiveSyncConnectivity Error nach neuem Zertifikat (22)

Frage von Driphex zum Thema Exchange Server ...

Hyper-V
HYPER V und USB (16)

Frage von Hendrik2586 zum Thema Hyper-V ...

SAN, NAS, DAS
Backupserver für KMU (14)

Frage von Leo-le zum Thema SAN, NAS, DAS ...