>Есть жуткое задание: нужно входное десятичное число в диапазоне 0..9999 перевести в
>Packed-BCD. Как это сделать?
Сам несколько продвинулся в этом вопросе, но всё-же не до конца. Вот так пишется Unpacked-BCD...
==============================================
#include <stdio.h>
#include <conio.h>
void main(void){
unsigned char x;
int xx;
clrscr();
printf("Введите X (меньше 100) --> ");
scanf("%d",&x);
asm{
mov al,x
aam
mov xx,ax
}
printf("\nНеупакованный BCD X=x",xx);
getch();
}
==============================================
Вот так нужно заменить ассемблерную вставку, чтобы работать с Packed-BCD
==============================================
mov al,25h
mov ah,30h
aam
mov xx,ax
==============================================
Теперь вопрос чисто чишный... Как введённое с клавиатуры число, скажем 3025 превратить в две строки: 25h 30h ?