source:
trunk/minix/lib/i86/em/em_inn.s@
10
Last change on this file since 10 was 9, checked in by , 14 years ago | |
---|---|
File size: 357 bytes |
Rev | Line | |
---|---|---|
[9] | 1 | .define .inn |
2 | .text | |
3 | ||
4 | ! #bytes in cx | |
5 | ! bit # in ax | |
6 | .inn: | |
7 | xor dx,dx | |
8 | mov bx,#8 | |
9 | div bx | |
10 | mov bx,sp | |
11 | add bx,#2 | |
12 | add bx,ax | |
13 | cmp ax,cx | |
14 | jae 1f | |
15 | movb al,(bx) | |
16 | mov bx,dx | |
17 | testb al,bits(bx) | |
18 | jz 1f | |
19 | mov ax,#1 | |
20 | jmp 2f | |
21 | 1: | |
22 | xor ax,ax | |
23 | 2: | |
24 | pop bx | |
25 | add sp,cx | |
26 | ! ax is result | |
27 | jmp (bx) | |
28 | ||
29 | .data | |
30 | bits: | |
31 | .data1 1,2,4,8,16,32,64,128 |
Note:
See TracBrowser
for help on using the repository browser.