title: Relative jump out of range by
body: <p>I get the message <strong>"(76)Relative jump out of range by 000Eh bytes"</strong> and <strong>(79)Relative jump out of range by 0007h bytes"</strong> whenever I input CMP octal, '3'. I'm supposed to do up until the 7th octal number but it always gives me an error when I try to do the 3rd octal number. I can only do 0,1, and 2 until it gives me an error. I don't know what I'm supposed to do. I've tried everything that I can as far as I've been taught but I still can't get any results. Please help me. I'm new to assembly. <strong>P.S. I'm using DOSBox 0.74</strong></p>
  
  <pre><code>.Model small
  
  .data
  txt1 db "Octal to Binary Converter$"
  txt2 db "Enter an Octal Symbol: $"
  title0 db "000$"
  title1 db "001$"
  title2 db "010$"
  title3 db "011$"
  title4 db "100$"
  title5 db "101$"
  title6 db "110$"
  title7 db "111$"
  
  mess db "Press ESC to exit...$"
  invalid db "Input is invalid. Try again.$"
  keypress db ?
  octal db ?
  
  .code
  Start:
  Mov AX, @data
  Mov ds, ax
  
  sys_st:
  Mov AH, 6
  Mov AL, 0
  Mov BH, 15
  Mov ch, 0
  Mov cl, 0
  Mov DH, 100
  Mov DL , 100
  Int 10H
  
  Mov AH, 2
  Mov BH, 0
  Mov DL, 5
  Mov DH, 5
  Int 10H 
  
  Mov AH, 9
  Lea DX, txt1 
  Int 21H
  
  JMP sys_st2
  
  sys_st2:
  Mov AH, 2
  Mov BH, 0
  Mov DL, 5
  Mov DH, 8
  Int 10H 
  
  Mov AH, 9
  Lea DX, txt2 
  Int 21H 
  
  Mov AH, 1
  Int 21H
  Mov octal, AL 
  
  CMP octal, '0'
  JE sys_0
  
  CMP octal, '1'
  JE sys_1
  
  CMP octal, '2'
  JE sys_2
  
  CMP octal, '3'
  JE sys_3
  
  
  CMP octal, '0'
  JNE sys_invalid
  
  CMP octal, '1'
  JNE sys_invalid
  
  CMP octal, '2'
  JNE sys_invalid
  
  CMP octal, '3'
  JNE sys_invalid
  
  sys_0:
  Mov AH, 2
  Mov BH, 0
  Mov DL, 11
  Mov DH, 11 
  Int 10H
  
  Mov AH, 9
  Lea DX, title0 
  Int 21H 
  
  Mov AH, 2 
  Mov BH, 0
  Mov DL, 5
  Mov DH, 15 
  Int 10H 
  
  JMP sys_exit
  
  sys_1:
  Mov AH, 2 
  Mov BH, 0
  Mov DL, 11
  Mov DH, 11 
  Int 10H 
  
  Mov AH, 9
  Lea DX, title1
  Int 21H 
  
  Mov AH, 2 
  Mov BH, 0
  Mov DL, 5
  Mov DH, 15 
  Int 10H 
  
  JMP sys_exit
  
  sys_2:
  Mov AH, 2 
  Mov BH, 0
  Mov DL, 11
  Mov DH, 11 
  Int 10H 
  
  Mov AH, 9
  Lea DX, title2
  Int 21H 
  
  Mov AH, 2 
  Mov BH, 0
  Mov DL, 5
  Mov DH, 15 
  Int 10H 
  
  JMP sys_exit
  
  sys_3:
  Mov AH, 2 
  Mov BH, 0
  Mov DL, 11
  Mov DH, 11 
  Int 10H 
  
  Mov AH, 9
  Lea DX, title3
  Int 21H 
  
  Mov AH, 2 
  Mov BH, 0
  Mov DL, 5
  Mov DH, 15 
  Int 10H 
  
  JMP sys_exit
  
  sys_invalid: 
  Mov AH, 2 
  Mov BH, 0
  Mov DL, 5 
  Mov DH, 11 
  Int 10H 
  
  Mov AH, 9
  Lea DX, invalid 
  Int 21H 
  
  Mov AH, 1 
  Int 21H 
  JMP sys_st 
  
  sys_exit: 
  
  Mov AH, 2
  Mov BH, 0
  Mov DL, 5
  Mov DH, 14
  Int 10H 
  
  Mov AH, 9
  Lea DX, mess 
  Int 21H 
  
  Mov AH, 1 
  Int 21H 
  Mov keypress, AL 
  
  CMP keypress, 27
  JNE sys_exit 
  
  JMP exit 
  
  Exit: 
  Mov AH, 4ch 
  Int 21H 
  End Start 
  </code></pre>