Jump to content
 







Main menu
   


Navigation  



Main page
Contents
Current events
Random article
About Wikipedia
Contact us
Donate
 




Contribute  



Help
Learn to edit
Community portal
Recent changes
Upload file
 








Search  

































Create account

Log in
 









Create account
 Log in
 




Pages for logged out editors learn more  



Contributions
Talk
 



















Contents

   



(Top)
 


1 Background  





2 Structure  





3 Instructions  



3.1  Input and output  





3.2  Memory storage  





3.3  Mathematical instructions  





3.4  Program control  





3.5  Other symbols  







4 CESIL programming tools  





5 Example  





6 See also  





7 Bibliography  





8 Notes  





9 References  














CESIL







Add links
 









Article
Talk
 

















Read
Edit
View history
 








Tools
   


Actions  



Read
Edit
View history
 




General  



What links here
Related changes
Upload file
Special pages
Permanent link
Page information
Cite this page
Get shortened URL
Download QR code
Wikidata item
 




Print/export  



Download as PDF
Printable version
 
















Appearance
   

 






From Wikipedia, the free encyclopedia
 


CESIL, or Computer Education in Schools Instruction Language,[1] is a programming language designed to introduce pupils in British secondary schools to elementary computer programming. It is a simple language containing a total of fourteen instructions.

Background

[edit]

Computer Education in Schools (CES) was a project that commenced in 1968 under the stewardship of the John Hoskyns Group.[2] The project was taken over by International Computers Limited (ICL) in September 1969 to become ICL-CES.[2] CESIL was developed by ICL as part of the ICL-CES project, and introduced in 1974.[3] In those days, very few if any schools had computers, so pupils would write programs on coding sheets, which would then be transferred to punched cardsorpaper tape.[4] Typically, this would be sent to run on a mainframe computer, with the output from a line printer being returned later.[5]

Structure

[edit]

Because CESIL was not designed as an interactive language, there is no facility to input data in real time. Instead, numeric data is included as a separate section at the end of the program.[6]

The fundamental principle of CESIL is the use of a single accumulator, which handles mathematical operations.[4] Numeric values are stored in variables, which in CESIL are referred to as store locations.[7] CESIL only works with integers, and results from DIVIDE operations are rounded if necessary.[8] There is no facility for data structures such as arrays, nor for string handling, though string constants can be output by means of the PRINT instruction.[4]

Jumps and loops can be conditional or non-conditional, and transfer operation of the program to a line with a specific label, which is identified in the first column of a coding sheet.[9] The instruction or operation is stated in the second column, and the operand in the third column.[10] On some coding sheets, comments and the text of the PRINT instruction would be written in a fourth column.[11]

Instructions

[edit]

Instructions, or operations, are written in upper case and may have a single operand, which can be a store location, constant integer value or line label. Store locations and line labels are alphanumeric, up to six characters, and begin with a letter.[12] Numeric integer constants must be signed + or −, with zero being denoted as +0.[13][a]

Input and output

[edit]

Memory storage

[edit]

Mathematical instructions

[edit]

In each case, the result of the operation is stored in the accumulator, replacing the previous value.

Program control

[edit]

Other symbols

[edit]

Three special symbols are used in CESIL at the beginnings of lines.

CESIL programming tools

[edit]

An emulator for CESIL, designed to run on Windows and called Visual CESIL, is available as freeware.[27]

An interpreter for CESIL, designed to run on the Android platform and called Wyrm CESIL, is available as free to install.[28]

Example

[edit]

The following totals the integers in the runtime data section until it encounters a negative value and prints the total.

        LOAD    +0
LOOP    STORE   TOTAL
        IN
        JINEG   DONE
        ADD     TOTAL
        JUMP    LOOP

DONE    PRINT   "The total is: "
        LOAD    TOTAL
        OUT
        LINE
        HALT

%
1
2
3
-1
*

The output of the above program would be:

The total is: 6

See also

[edit]

Bibliography

[edit]

Monsoon, Colin C; Sewell, Ian R; Frances P, Vickers (1978). Computer Studies. Vol. Book 1. ICL Computer Education in Schools. ISBN 0-903885-17-4.

Notes

[edit]
  1. ^ Visual CESIL does not require non-negative constants to be signed.
  • ^ Not supported in Visual CESIL. * is used instead.
  • References

    [edit]
    1. ^ Computer Studies, page 71
  • ^ a b Sewell, Ian, ed. (January 1980). "CES enters second decade". ICL-CES Newsletter. p. 1.
  • ^ Furber, Steve (January 2012). "Appendix J: Timeline of major developments in Computing in schools in England". Shut down or restart? The way forward for computing in UK schools (PDF). The Royal Society. p. 120. Archived (PDF) from the original on 2021-05-06. Retrieved 20 June 2021.
  • ^ a b c d Computer Studies, page 72
  • ^ "My First Program". Archived from the original on 24 June 2021. Retrieved 16 June 2021.
  • ^ Computer Studies, page 82
  • ^ Computer Studies, page 76
  • ^ a b Computer Studies, pages 93–94
  • ^ a b Computer Studies, page 148
  • ^ a b Computer Studies, page 77
  • ^ a b Computer Studies, page 74
  • ^ Computer Studies, pages 96, 148
  • ^ Computer Studies, pages 97–99
  • ^ Computer Studies, page 201
  • ^ a b c Computer Studies, page 73
  • ^ Computer Studies, pages 199–200
  • ^ Computer Studies, pages 80, 97–98
  • ^ Computer Studies, pages 84, 97–98
  • ^ Computer Studies, pages 86, 97–98
  • ^ Computer Studies, pages 90, 97–98
  • ^ Computer Studies, pages 92, 97–98
  • ^ Computer Studies, page 145
  • ^ Computer Studies, page 198
  • ^ Computer Studies, page 154
  • ^ Computer Studies, page 83
  • ^ Computer Studies, page 164
  • ^ Andrew John Jacobs (20 June 2010). "Visual CESIL". Archived from the original on 12 September 2021. Retrieved 26 November 2021.
  • ^ Wyrm Software (13 October 2019). "Wyrm CESIL". Archived from the original on 25 November 2021. Retrieved 25 November 2021.

  • Retrieved from "https://en.wikipedia.org/w/index.php?title=CESIL&oldid=1231424468"

    Categories: 
    Educational programming languages
    History of computing
    Hidden categories: 
    Articles with short description
    Short description matches Wikidata
    CS1: long volume value
     



    This page was last edited on 28 June 2024, at 06:10 (UTC).

    Text is available under the Creative Commons Attribution-ShareAlike License 4.0; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.



    Privacy policy

    About Wikipedia

    Disclaimers

    Contact Wikipedia

    Code of Conduct

    Developers

    Statistics

    Cookie statement

    Mobile view



    Wikimedia Foundation
    Powered by MediaWiki