Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Ассемблер _ помогите с курсором...

Автор: bigglewood 10.04.2007 22:59

вот я написал прогу.

 
my_stack segment stack
dw 32 dup(?)
my_stack ends
oursg segment
assume cs:oursg, ds:oursg,ss:my_stack

symb db 168 dup('*')
begin:
mov ax, oursg
mov ds, ax
mov cx, 7
mov al, 51
mov si, 0
m0:
push cx
mov cx, 12
m:
mov [symb+si], al
inc si
mov [symb+si], 09h
inc al
inc si
loop m
pop cx
loop m0
mov ah,40h
mov cx,168
mov bx,1
mov dx, offset symb
int 21h
mov ax, 4C00h
int 21h
oursg ends
end begin




она выдает результат в виде(строк):

Код

3        4       5       6       7       8       9       :      ;       <
=       >       ?       @       A       B       C       D       E       F
G       H       I       J       K       L       M       N       O       P
Q       R       S       T       U       V       W       X       Y       Z
[       \       ]       ^       _       `       a       b       c       d
e       f       g       h       i       j       k       l       m       n
o       p       q       r       s       t       u       v       w       x
y       z       {       |       }       ~       ⌂        А       Б       В
  Г       Д       Е       Ж

а мне нужен вывод ввиде столбцов. т.е результат должен быть таким
Код

3 = G Q
4 > H R
5 ? I  S
6 @ J T
7 A K    и так далее.
8 B L
9 C M
: D  N
; E O
< F P

не могу понять как это сделать. спасибо.

Автор: bigglewood 12.04.2007 21:39

Уже решил сам. всем спасибо. кому интересно вот:


my_stack segment stack
dw 32 dup(?)
my_stack ends
oursg segment
assume cs:oursg, ds:oursg
begin:
symb db 168 dup('*')
mov ax, oursg
mov ds, ax
mov ax,51
mov cx,12
mov si,0
LOOP_A1:
push cx
push ax
mov cx,14
mov [symb+si],0ah
inc si
LOOP_B1:
mov [symb+si],al
inc si
add al,12
loop LOOP_B1
pop ax
inc ax
pop cx
loop LOOP_A1


mov ah, 40h
mov cx, 168
mov bx, 1
mov dx, offset symb
int 21h
mov ax, 4C00h
int 21h
oursg ends
end begin