# CSE 322 Summer 2018 Lab 4

If AX contains a negative number, put -1 In BX; if AX contains 0, put 0 In BX; if AX contains a positive number, put 1 In BX.

```//Code
mov ax, 50

cmp ax, 0
jl negative
jg positive
je zero

negative:
mov bx, -1
jmp end_
positive:
mov bx, 1
jmp end_
zero:
mov bx, 0

end_:```

If AL contains I or 3, display “o”; if AL contains 2 or 4, display “e”.

```//Code
mov al, 4

mov ah, 2

cmp al, 1
je odd
cmp al, 2
je even
cmp al, 3
je odd
cmp al, 4
je even

odd:
mov dl, 'o'
int 21h
jmp end_

even:
mov dl, 'e'
int 21h
jmp end_
end_:```

Odd even checker upto 9 and the number has to be taken as input.

```//Code

top:
mov ah, 1
int 21h
sub al, '0'
mov bl, al

mov ah, 2
mov dl, '-'
int 21h

mov al, bl

cmp al, 0
je even
cmp al, 1
je odd
cmp al, 2
je even
cmp al, 3
je odd
cmp al, 4
je even
cmp al, 5
je odd
cmp al, 6
je even
cmp al, 7
je odd
cmp al, 8
je even
cmp al, 9
je odd

odd:
mov ah, 2
mov dl, 'o'
int 21h
jmp end_

even:
mov ah, 2
mov dl, 'e'
int 21h
jmp end_
end_:
mov dl, 0dh
int 21h
mov dl, 0ah
int 21h

jmp top
```

Read a character, and if it’s an uppercase letter, display it.

```//Code
top:
mov ah, 1
int 21h

cmp al, 'A'
jl noprint
cmp al, 'Z'
jg noprint

mov ah, 2
mov dl, al
int 21h

noprint:
jmp top```

Read a character. If it’s “y” or “Y”, display it; otherwise, terminate the program.

```//Code
top:
mov ah, 1
int 21h

cmp al, 'Y'
je then
cmp al, 'y'
je then
jmp else
then:
mov ah, 2
mov dl, al
int 21h
jmp top
else:
mov ah, 4ch
int 21h```

Write some code to count the number of charaters in an input line.

```//Code
mov cx, 0
mov ah, 1
label1:
int 21h
cmp al, 0dh
je end_
inc cx
jmp label1

end_:```

```//Code
mov cx, 0
mov ah, 1
label1:
int 21h
cmp al, ' '
je end_
inc cx
jmp label1

end_:```