в вычисленияхудерживать 200 двоичных цифр.вывести на печаит первые 100 двоичных цифр.для организации вывода символов двоичных цифр использовать сдвиги бит
есть вопрос по выводу на экран
Код: Выделить всё
model tiny
masm
.386
.data
s db 42 dup(?) ;результат
a db 42 dup(?) ;определение временного массива
long dd 1 ; делимое
pr_numb db 10 dup(?)
ln_s=$-s
.code
assume cs:@code,ds:@code,es:@code,ss:@code
org 100h
begin:
mov cx,42
mov si,offset s ; результат
mov di,offset a ; временный массив
; dx=0001h, старшая часть
mov dx, word ptr long ; делимого
; ax=0000h , младшая часть
; делимого
mov bx,5
xor ax,ax
push ds
pop es
divide: ; заполнение начального значения суммы
div bx ;s=s/n
mov [si],ax ;s---->()()()()
inc si
inc si
mov ax,[si]
loop divide
;====================================================
==========
;---------------
mov ax,[si-2]
;--------------
mov si,offset s
mov di,offset a
push di
cld
mov cx,21
rep movsw
pop si
mov cx,42
tell:
push cx
mov edx,0
mov cx,1
double:
mov ax, [si] ; s1:=s1\n
div bx
mov [si],ax
inc si
inc si
loop double
stc ;устанавливаем CF=1
dec si
dec si
mov di,offset a
add di,ln_s-2
clc
mov cx,42
@label:
mov ax,[di] ;сложение [di]+[si]
adc ax,[si]
mov [si],ax
dec si
dec si
dec di
dec di
loop @label
pop cx
; loop tell
;----------------------------
;-------------------------------
end begin