Look Up Another Term

Definition: source code


Programming statements and instructions that are written by the developer. Source code is what a programmer writes, but it is not directly executable by the computer. It must be converted into machine language by compilers, assemblers or interpreters.

In some cases, source code can be machine generated by programs that convert the source code of one programming language or dialect into the source code of another language or dialect. See lines of code, compiler, assembler and interpreter.

High Level Vs. Low Level
Most programmers write in high-level languages such as C/C++ and Java. However, there are programs written in assembly language, which is essentially a mnemonic version of the hardware's machine language. Following are examples of both high and low level for converting Fahrenheit to Celsius.

  C (High Level)

  float fahr;
  printf("Enter Fahrenheit: ");
  scanf("%f", &fahr);
  printf("Celsius is %f\n", (fahr-32)*5/9);


  Python (High Level)

  printf("Enter Fahrenheit: ")
  fahr = float(input)
  cell = ((fahr -32) * 5 / 9, 1)
  printf("Celsius is {}".format(cell))


  Java (High Level)

   import java.io.*;
 class Convert {
  public static void main(String[]args)
  throws IOException {
   float fahr;
   StreamTokenizer in=new
     StreamTokenizer
       (new InputStreamReader(System.in));
   System.out.print("Enter Fahrenheit ");
   in.nextToken();
   fahr = (float) in.nval;
   System.out.println ("Celsius is " +
                        (fahr-32)*5/9);
  }
 }


  Intel x86 Assembly Language (Low Level)

  cseg    segment para public 'CODE'
          assume  cs:cseg,ds:cseg
  start:
          jmp     start1
  msgstr  db      'Enter Fahrenheit '
  crlf    db      13,10,'$'
  nine    db      9
  five    db      5
  outstr  db      'Centrigrade is $'
  start1: push    ds
          push    cs
          pop     ds
          mov     dx,offset cseg:msgstr
          mov     ah,9
          int     21h
  sloop:
  cent:   call    getnumb
          test    ax,ax
          je      exit
          push    ax
          mov     dx,offset cseg:outstr
          mov     ah,9
          int     21h
          pop     ax
          sub     ax,32
          jns     c1
          push    ax
          mov     dl,'-'
          mov     ah,6
          int     21h
          pop     ax
          neg     ax
  cl:     mul     five
          div     nine
          call    putval
          mov     dx,offset cseg:crlf
          mov     ah,9
          int     21h
          jmp     sloop
  exit:   pop     ds
          mov     ah,4ch
          int     21h
  getnumb:
          xor     bx,bx
  llp:    mov     dl,0ffh
          mov     ah,1
          int     21h
          cmp     al,0dh
          je      llr
          sub     al,'0'
          jb      llr
          cmp     al,'9'
          ja      llr
          xor     ah,ah
          shl     bx,1
          add     ax,bx
          shl     bx,1
          shl     bx,1
          add     bx,ax
          jmp     llp
  llr:    mov     dx,offset cseg:crlf
          mov     ah,9
          int     21h
          mov     ax,bx
          ret
  putval: xor     bx,bx
          push    bx
          mov     bx,10
  llg:    xor     dx,dx
          div     bx
          add     dx,'0'
          push    dx
          test    ax,ax
          jne     llg
  bloop:  pop     dx
          test    dx,dx
          je      endx
          mov     ah,6
          int     21h
          jmp     bloop
  endx:   ret
  cseg    ends
          end     start