Einige Folgen von Befehlen kehren häufig wieder, da sie elementare Aufgaben bewältigen. Gerade bei diesen ist es wichtig, sie weitestgehend zu vereinfachen, um die Programme kurz zu halten. Eine dieser Folgen lädt ein Segmentregister mit dem Wert Null, um z. B. Elementare Befehlsfolgen vereinfachen | JANNOT GbR. auf die Tabelle der Interruptvektoren oder einige Systemvariablen im BIOS-Datenbereich (ab 40h:0) zugreifen zu können. Weil es der 8088 nicht erlaubt, konstante Werte in Segmentregister laden, werden dafür zumeist zwei Befehle der Art
XOR AX, AX
MOV DS, AX
verwendet. Die erste Zeile ist gleichbedeutend mit »MOV AX, 0«, benötigt jedoch ein Byte weniger Programmcode. Macht man sich hingegen die eben erläuterten »äußeren Umstände« bei COM-Programmen zunutze, ergeben sich gleich zwei einzeilige Methoden, um beim Programmstart den gleichen Effekt zu erreichen. Die erste davon lädt mit »POP DS« die oben auf dem Stapel liegende Null in das Segmentregister. Zu beachten ist dabei, daß die Beendigungsmethode mit »RETN« nun nicht mehr funktioniert, weil der dafür benötigte Wert ja nicht mehr auf dem Stapel liegt.
- Befehl zur programmbeendigung in new york
Befehl Zur Programmbeendigung In New York
Angenommen der User macht bei einer Abfrage in einer Schleife eine sinnlose Antwort, wie kann ich das so realisieren dass das Programm nicht gleich komplett beendet wird sondern das die Frage erneut gestellt wird? Meine Lösung ist eine endlose Schleife die dann ausgelöst wird wenn eine ungültige Antwort gegeben wird. Die Schleife stellt quasi immer wieder die selbe Frage solange sie nicht richtig beantwortet ist allerdings finde ich die Lösung etwas unelegang oder macht man das so? Community-Experte
Computer, Programmieren
Es ist schon richtig...
Du kennst ja bestimmt if abfragen. while Schleifen sind ähnlich, nur dass diese sich wiederholen, bis es nicht mehr zu trifft. string test = "";
do
{
Console. WriteLine("Wie heißt du? ");
test = adLine();}
while(test! = "Jeff")
Jetzt sollte das solange wiederholt werden, bis eben Jeff eingegeben wird
Bei Konsolenprogrammen ergibt eine while-Schleife, wie die Anderen schon geantwortet haben, durchaus Sinn. Bei Programmen, in denen man eine UI mit Knöpfen und Eingabefeldern etc. Befehl zur programmbeendigung in new york. hat, ist das meist 'dynamisch' geregelt, bzw. läuft im Hintergrund.
Zum Beispiel wartet das Programm darauf, dass ein Knopf gedrückt wird, welcher ein Event gestartet, in dem man dann zum Beispiel ein Eingabefeld auf die korrekte Eingabe prüfen und dementsprechend eine Aktion ausführen kann. Und wenn die Eingabe falsch war, wird z. B. ein Text mit "Falsche Eingabe" angezeigt und das Programm wartet wieder auf ein neues Event. Woher ich das weiß: Hobby – Beschäftige mich in meiner Freizeit viel mit Computern
Computer, Programmieren, Informatik
Du machst halt etwas ähnlich wie folgendes:
bool answered = false;
do{
answered = ask_question(question_id);}while(! answered);
Computer
Genau so macht man das. Befehl zur programmbeendigung in english. Man bleibt solange in der Schleife, bis die Antwort gültig ist. Sowas kann man sehr gut mit eine do.. while schleife lösen
Pseudo-code:
do {
Frage den User} while (Antwort war nicht sinnvoll)