Мне нужно показать все числа из матрицы (3x3), где число имеет два первых бита. Я думаю, что я где-то рядом с решением, но что-то не так, можете ли вы указать, что не так?Операции бит TASM
.model small
.stack 100h
.data
n equ 3
a dw n*n dup(?)
.code
extrn write:near
extrn read:near
begin:
mov ax,@data
mov ds,ax
mov cx,n*n
mov si,0
m1:
call read
mov a[si],ax
add si,2
loop m1
mov si,0
mov cx,n*n
m2:
mov bx, a[si]
test bx,1
jz net
test bx,2
jz net
mov ax,a[si]
call write
net:
add si,2
loop m2
mov ah,4ch
int 21h
end begin
Какой симптом вы видите, что заставляет вас думать, что есть проблема? – 2010-12-06 20:49:59
Я думаю, что определение первых двух битов неверно, потому что, когда я вхожу в 3 6 7, он дает мне только два из них, но оба они имеют 11 в качестве первых бит. – Viktor 2010-12-06 20:53:51