Explorations in Computer Science by R. Mark Meyer Applets (The lab numbers refer to labs in "Explorations in Computer Science." These lab numbers are the same as the chapter numbers refer to chapters in "Computer Science Illuminated" by Nell Dale and John Lewis. If there is more than one lab per book chapter, the labs are given letters such as Lab 12a and Lab 12b. Both refer to material in Chapter 12 of the textbook.) Lab 1: Introduction applet Introduction -- tell us about yourself and practice taking screenshots Lab 2: Binary Values and Number Systems Number systems -- conversions between base 10 and some other bases Binary addition -- convert numbers to binary and add them Lab 3: Data Representation Negative binary numbers -- sign-magnitude form and 2's complement form Real number representations -- scientific notation in decimal and in binary Character codes (ASCII and Unicode) -- show the corresponding ASCII or Unicode values for characters (up to 255). Text translator into ASCII -- display a list of the Unicode values, and allow some text to be converted to numeric codes Color maker -- display colors in RGB and HSB formats Text compression using a keyword table -- compress and decompress text using a keyword table Text compression using Huffman encoding -- compress and decompress text using a Huffman encoding Lab 4: Logic Circuits LogicGates -- A logic gate circuit simulator Lab 5: Computing Components Super Simple CPU -- a complete, working computer that illustrates the fetch/decode/execute cycle. Lab 7: Low-Level Programming Languages Super Simple CPU -- the same as used in Lab 5 (above) Lab 8: High Level Programming Palgo -- "painting algorithmically", a simple paint environment where a program directs the paintbrush. Also allows purely textual programming. Lab 9: Abstract Data types Sorting -- selection sort, bubble sort, quick sort Searching -- sequential versus binary search Lab 10: Operating Systems Placement of jobs in memory -- contiguous allocation of memory for jobs, using various fitting algorithms Scheduling of jobs -- using FSCS, SJF and Round Robin Lab 11: File Systems and Directories Disk Scheduling -- FSCS, SSTF and SCAN (elevator) Lab 12: Information Systems Simple SQL -- A tiny relational database program that processes SQL queries Lab 13: Artificial Intelligence Semantic networks -- logic deduction Eliza therapist -- conversational computer program using some simple rules for textual transformation Lab 14: Simulation Game of life -- the classic cellular automaton Heat transfer -- colorful animation of dissipation of heat Lab 15: Networks Tcpip -- reliable connection, ensured delivery of packets between two nodes in a network, allows user to damage or destroy packets Network router -- illustrates how routing decisions are made Lab 17: Limits of Computing Comparison of several functions -- shows how f(N) gets very large Traveling Salesperson Problem -- run the algorithm on various graphs to find the shortest complete route (if there is one). Beware! If you animate the search and the graph is reasonably large, the applet will take a very long time to finish!