1234567891011121314151617181920212223242526272829303132 |
- .sect .text; .sect .rom; .sect .data; .sect .bss
- .sect .text
- .define .inn
- ! #bytes in cx
- ! bit # in ax
- .inn:
- xor dx,dx
- mov bx,8
- div bx
- mov bx,sp
- add bx,2
- add bx,ax
- cmp ax,cx
- jae 1f
- movb al,(bx)
- mov bx,dx
- testb al,bits(bx)
- jz 1f
- mov ax,1
- jmp 2f
- 1:
- xor ax,ax
- 2:
- pop bx
- add sp,cx
- ! ax is result
- jmp bx
- .sect .data
- bits:
- .data1 1,2,4,8,16,32,64,128
|