assembler
Модератор: Andy
-
- Сообщения: 1
- Зарегистрирован: 30 июн 2009, 15:31
Хто знає як організовується розгалуження на мові Ассемблер?
-
- Сообщения: 5
- Зарегистрирован: 23 июл 2009, 13:59
Розгалуження - це тобто умовний оператор? Якщо так то можна зробити так:
Що робить дана програма? Вона жде вводу з клавіатури. Якщо користувач натисне F, то программа видасть повідомлення що натиснута F, в іншому випадку - що вона не натиснута.
Аналог на C:
Код: Выделить всё
CSEG segment
assume CS:CSEG, DS:CSEG, ES:CSEG, SS:CSEG
org 100h
Start:
mov ah,10h
int 16h
cmp al,'F'
jz F_press
mov ah,9
mov dx,offset msg2
int 21h
mov ah,10h
int 16h
int 20h
F_press:
mov ah,9
mov dx,offset msg1
int 21h
mov ah,10h
int 16h
int 20h
msg1 db 'Key is F!$'
msg2 db 'Key is not F!$'
CSEG ends
end Start
Аналог на C:
Код: Выделить всё
#include <conio.h>
#include <stdio.h>
int main()
{
char a;
a=getch();
if(a == 'F')
printf("You press F");
else
printf("You don't press F");
getch();
return 0;
}