Notes You must work with your partner on this assignment. The LC-3 solution submitted must work on the Linux version of the simulator.
|
|
- June Alisha Flynn
- 7 years ago
- Views:
Transcription
1 CSC Spring 2011 Revision #1 Laboratory Project Final Professor Grimes Due Friday, June 3, 2011 Points: 100 (In order to receive 100 points, the following deliverables must be completed.) Deliverable # 1, Due Monday, May 23, 2011, See note in Design Section. Demonstrate in the Lab on this date and submit product by midnight on this date. Deliverable # 2, Due Wednesday, May 25, 2011, See note in Design Section. Demonstrate in the Lab on this date and submit product by midnight on this date. Deliverable # 3, Due Friday, May 27, 2011, See note in Design Section. Demonstrate in the Lab on this date and submit product by midnight on this date. Objectives Become more proficient at assembly programming, including 1. Subroutines 2. Structures 3. Dynamic memory Know the actions of the assembler and be able to implement them in assembly language Notes You must work with your partner on this assignment. The LC-3 solution submitted must work on the Linux version of the simulator. Overview In this program you will implement a 2-pass assembler (We have discussed this and the book has additional information.). Input to your program will be LC-3 assembly. Output from your program is the actual machine language that corresponds to the LC-3 input. This will be stored directly into memory starting at the.orig address specified in the input. You are to implement this assembler in LC-3 assembly. You will not be required to do everything because code is provided to get you started. Supplied Code Start with the fp.asm file found on the course website. You should become familiar with these subroutines and be able to use them. The comments before each subroutine give more detail about what they do. Look closely at the comments for PARSER INIT, PARSER NEXT, and PARSER FINI. The PARSEFILE subroutine shows how to use these three functions to parse the input assembly a line at a time. PARSER NEXT returns a data structure with the following information for each assembly non comment assembly line: Offset Description +0 Address of a string that contains the LABEL. NULL if no label +1 Address of a string that contains the OPCODE. +2 Address of a string that contains OPERAND1. NULL if no operand. +3 Address of a string that contains OPERAND2. NULL if no operand. +4 Address of a string that contains OPERAND3. NULL if no operand. +5 Address of the instruction description structure for this OPCODE.
2 All strings are NULL-terminated character arrays. The parser code takes care of skipping the comments, locating and extracting the labels, opcodes, operands. It also provides an instruction description" structure that you can use to simplify the second pass of your assembler (code generation). The instruction description" structure is: Offset Description +0 Address of next structure in the linked list. You do not need to use this value. +1 Integer number of operands for this OPCODE. +2 Enumerated type indicating the addressing mode of the instruction. See the comments in fp.asm for the full list of values. +3 Base machine language bit pattern for this OPCODE. All bits that are determined by operands are zero if the last operand is a register. Non-zero if the last operand is an immediate. Note { In LC-3 all other operands are registers. +5 Description of operand 1. Only valid when the instruction has at least 1 operand. If OP1 is a register, the number of bits to shift the 3-bit register number before ORing it into the machine instruction. If OP1 is an +6 Description of operand 2. Only valid when the instruction has at least 2 operands. If OP2 is a register, the number of bits to shift the 3-bit register number before ORing it into the machine instruction. If OP2 is an +7 Description of operand 3. Only valid when the instruction has at least 3 operands. If OP3 is a register, the number of bits to shift the 3-bit register number before ORing it into the machine instruction. If OP3 is an Unused. +11 Address of immediate form for the equivalent 3-register opcode. Ignore this field. +12 First character of a NULL-terminated string containing the nemonic string for this OPCODE. This structure provides enough information for data-driven machine code generation. Using the opcode and operand descriptions in this table, you can implement a single subroutine that can handle all machine code generation without any special cases for handling LC-3 instructions. The complete table is stored starting at label OPCODE TABLE in fp.asm if you want to read it. You will still need special cases to handle pseudo-operations (like.orig and.fill). The design section of this project description has information to help you with this. You should also review the LC-3++" supplemental manual found on the Blackboard website under this assignment. This document details all the changes that have been made to the simulator. Pay particular attention to the new traps that have been added (near the end of the document). The new traps are for common string operations, common math (SUB, MULT) and logic (OR) operations, and allocating dynamic memory Design Write and test this program in phases. There is no way you can write it all and then begin testing it. The following is deign guidance that will facilitate your work on this program. You must follow it. The following are the steps to be taken to complete the implementation: 1. Pass 1 - Implement a pass-1 subroutine. Pass the address of the file to assemble into this subroutine. Create a stub subroutine based on the PARSEFILE subroutine. Change this routine slightly to process the.orig directive (use the enumerated type in the instruction description to determine it is.orig and STRTOL on the operand to determine the actual origin address). Modify pass-1 to track the Location Counter (LC), starting with the.orig value you previously determined. Initially assume every instruction requires 1 address. Write another subroutine that determines the actual number of addresses used by the instruction. This will vary as a result of.blkw,.stringz, and.end pseudo-ops. Remember, use the enumerated type to determine the opcode (not the string).
3 Use your function to correctly track the LC for each instruction. Deliverable #1: Complete everything to here. Demonstrate each of above modules with test separately. Every time there is a label, print out the label and the value for the LC at the time. This should be the symbol output for the program you are assembling. Verify the LC values in your output are correct by comparing the with the values that lc3as determines for the same code. Implement an ADD SYMBOL subroutine that inserts the symbol information you were printing in the previous part into a symbol table. Use a linked list for the symbol table. Add the new node at the end of the list, to keep it sorted in LC order. Use the MALLOC trap to allocate memory for the node. Update pass-1 to call the ADD SYMBOL subroutine instead of printing out the symbol information. Return the starting address of the symbol table from the pass-1 subroutine. Deliverable #2: Complete everything to here. Demonstrate each of above modules after last deliverable with test separately. 2. Write a master ASSEMBLE subroutine that calls pass Write a print-symbol-table subroutine that walks through the entire symbol table and prints it out in the format required for this lab. 4. Modify ASSEMBLE so it takes the symbol table from pass-1 and passes it to your print subroutine. 5. Test your code. 6. Create a skeleton pass-2 subroutine based on your pass-1 code. pass-2 needs to do many of the same things, including tracking of the LC during the pass. It shouldn't add any symbols to the table. Modify ASSEMBLE to call pass-2 after it has printed the symbol table. 7. Test your code. 8. Starting implementing machine language generation: Your pass-2 code should call a function (based on the enumerated type of the instruction) that actually generates the machine language encoding for the instruction. I suggest using a jump table for this. A jump table is an array of labels (in our case an array is just consecutive memory locations). Place the label for the subroutine that handles opcodes with no operands (enumerated type '0') at index 0. Do a similar thing for all 14 enumerated types. In your pass-2 code, load the starting address of the table, add the enumerated type to it, and then load that value into a register. Use JSRR to call the actual subroutine. There is no need for conditionals to do this. Also, ensure all subroutines accept the same parameters and return the same results. Implement a stub generator function that displays a warning about needing to implement a real generator. Use this stub for all opcodes. Pick an easy opcode (say, enumerated type 0" which has no operands) and write the generator function. Deliverable #3: Complete everything to here. Demonstrate each of above modules after last deliverable with test separately. Repeat (also consider writing a single, generic piece of code based on the data structure discussed above). Base the order you implement your functions on the order points are assigned for this program. You will need separate logic for.fill,.stringz, and.blkw. Some instructions will require symbol table lookups (resolve a label) and the computation of a PCrelative immediate. Put this logic in separate subroutines. Some instructions will require you to parse the register syntax (e.g., R4") and convert it into a 3-bit number. Write a subroutine that does this. You can also have the routine shift it according to the instruction description. Remember, after you have generated the instruction, store it in the correct location in memory. 9. Have your ASSEMBLE function return the.orig address. 10. Have your main code call ASSEMBLE and then JMP to the address that gets returned. The program
4 should run! Test with some of your old labs! Example Output The complete set of examples is available on the course website. Here is the output snippet that covers the text not produced automatically by the simulator. There may be additional output depending on what the assembled program does. This example is taken from fp ex0: --- halting the LC (lc3sim) Will not use stdin for LC-3 console input during script execution. Loaded "fp_ex0.obj" and set LC (PC)to x8000 WARNING: No symbols are available. Loaded "fp.obj" and set LC (PC)to x7000 Symbol table contents: L1: x3000 L2: x3001 L3: x3002 L4: x3011 L5: x3028 **** Starting program **** --- halting the LC This demonstrates the required standard output from the assembler (the symbol table and the Starting program" line). Everything else will depend on the actual program being assembled. Testing Testing this program is a little more involved. You can not directly load.asm files into the simulator. Instead, there is a program on Blackboard, txt2lc3, which converts any ASCII text file into an LC-3.obj file. Use this program on the test.asm files. Load the resulting.obj into the simulator like normal. The file will load starting at address x8000. In addition, the program printfile.asm on the course website demonstrates how to loop through the ASCII file loaded at x8000 and print it out one character at a time. Using printfile you can convince yourself that the ASCII file was imported into the simulator correctly. You will need to import the source ASM file and the.obj for your assembler each time you rerun the simulator. Eleven test cases, fp ex[0-10], have been provided for you on the course website. The input is designed to be used with the lc3wrapper.sh script found in bellardo/bin. You should redirect the script's output to a file and diff that against the provided output. The following shows how to do this for the fp ex0" test case. Your program must be assembled before running these commands: bellardo@vogon:~/csc225 $ ~bellardo/bin/lc3wrapper.sh < fp_ex0.in > fp_ex0.myout bellardo@vogon:~/csc225 $ diff fp_ex0.out fp_ex0.myout bellardo@vogon:~/csc225 $ Requirements Your output must match the example output exactly, character for character.
5 Submittal This uses the command line lc3 simulator found on vogon. There may be slight differences between the Window's simulator and the version used by lc3wrapper. You should test your program with diff as described here before submitting it. Submit all deliverables via Blackboard before midnight on the due date. The following is a complete list of deliverables: 1. Deliverable steps For each step the product must be demonstrated in Lab on the due date. All modules must be zip d and submitted by midnight on the due date. 2. Final Deliverable a. team.txt" file - The team.txt" file informs us who you and your partner are. This enables you to submit a single copy of the program, and both you and your partner will receive the same score. You MUST submit a team.txt file. Create the file team.txt" with your favorite text editor In the first line, put your CSL username. My CSL username is jgrimes". This MUST be your CSL username (on the off chance your portal username is different). All letters in your username MUST be lowercase. This is NOT an address, do not or any other additional information in this file. NONE. Add the statement I did not cheat. In the second line of the file, put your partner's CSL username. Assuming I am working with Brian Wihl, our team.txt file would look like: jgrimes I did not cheat. bwihl I did not cheat. b. fp.asm
Chapter 7 Assembly Language
Chapter 7 Assembly Language Human-Readable Machine Language Computers like ones and zeros 0001110010000110 Humans like symbols ADD R6,R2,R6 increment index reg. Assembler is a program that turns symbols
More informationLC-3 Assembly Language
LC-3 Assembly Language Programming and tips Textbook Chapter 7 CMPE12 Summer 2008 Assembly and Assembler Machine language - binary Assembly language - symbolic 0001110010000110 An assembler is a program
More informationLab Experience 17. Programming Language Translation
Lab Experience 17 Programming Language Translation Objectives Gain insight into the translation process for converting one virtual machine to another See the process by which an assembler translates assembly
More information1 Description of The Simpletron
Simulating The Simpletron Computer 50 points 1 Description of The Simpletron In this assignment you will write a program to simulate a fictional computer that we will call the Simpletron. As its name implies
More informationNotes on Assembly Language
Notes on Assembly Language Brief introduction to assembly programming The main components of a computer that take part in the execution of a program written in assembly code are the following: A set of
More informationComp 255Q - 1M: Computer Organization Lab #3 - Machine Language Programs for the PDP-8
Comp 255Q - 1M: Computer Organization Lab #3 - Machine Language Programs for the PDP-8 January 22, 2013 Name: Grade /10 Introduction: In this lab you will write, test, and execute a number of simple PDP-8
More information1 Classical Universal Computer 3
Chapter 6: Machine Language and Assembler Christian Jacob 1 Classical Universal Computer 3 1.1 Von Neumann Architecture 3 1.2 CPU and RAM 5 1.3 Arithmetic Logical Unit (ALU) 6 1.4 Arithmetic Logical Unit
More information2) Write in detail the issues in the design of code generator.
COMPUTER SCIENCE AND ENGINEERING VI SEM CSE Principles of Compiler Design Unit-IV Question and answers UNIT IV CODE GENERATION 9 Issues in the design of code generator The target machine Runtime Storage
More informationFigure 1: Graphical example of a mergesort 1.
CSE 30321 Computer Architecture I Fall 2011 Lab 02: Procedure Calls in MIPS Assembly Programming and Performance Total Points: 100 points due to its complexity, this lab will weight more heavily in your
More informationInstruction Set Architecture (ISA)
Instruction Set Architecture (ISA) * Instruction set architecture of a machine fills the semantic gap between the user and the machine. * ISA serves as the starting point for the design of a new machine
More informationCSE 141L Computer Architecture Lab Fall 2003. Lecture 2
CSE 141L Computer Architecture Lab Fall 2003 Lecture 2 Pramod V. Argade CSE141L: Computer Architecture Lab Instructor: TA: Readers: Pramod V. Argade (p2argade@cs.ucsd.edu) Office Hour: Tue./Thu. 9:30-10:30
More informationa storage location directly on the CPU, used for temporary storage of small amounts of data during processing.
CS143 Handout 18 Summer 2008 30 July, 2008 Processor Architectures Handout written by Maggie Johnson and revised by Julie Zelenski. Architecture Vocabulary Let s review a few relevant hardware definitions:
More informationThe 104 Duke_ACC Machine
The 104 Duke_ACC Machine The goal of the next two lessons is to design and simulate a simple accumulator-based processor. The specifications for this processor and some of the QuartusII design components
More informationASSEMBLY LANGUAGE PROGRAMMING (6800) (R. Horvath, Introduction to Microprocessors, Chapter 6)
ASSEMBLY LANGUAGE PROGRAMMING (6800) (R. Horvath, Introduction to Microprocessors, Chapter 6) 1 COMPUTER LANGUAGES In order for a computer to be able to execute a program, the program must first be present
More informationFormal Languages and Automata Theory - Regular Expressions and Finite Automata -
Formal Languages and Automata Theory - Regular Expressions and Finite Automata - Samarjit Chakraborty Computer Engineering and Networks Laboratory Swiss Federal Institute of Technology (ETH) Zürich March
More informationSummary of the MARIE Assembly Language
Supplement for Assignment # (sections.8 -. of the textbook) Summary of the MARIE Assembly Language Type of Instructions Arithmetic Data Transfer I/O Branch Subroutine call and return Mnemonic ADD X SUBT
More informationVHDL Test Bench Tutorial
University of Pennsylvania Department of Electrical and Systems Engineering ESE171 - Digital Design Laboratory VHDL Test Bench Tutorial Purpose The goal of this tutorial is to demonstrate how to automate
More informationChapter 2 Assemblers http://www.intel.com/multi-core/demos.htm
Chapter 2 Assemblers http://www.intel.com/multi-core/demos.htm Source Program Assembler Object Code Linker Executable Code Loader 1 Outline 2.1 Basic Assembler Functions A simple SIC assembler Assembler
More informationASSEMBLY PROGRAMMING ON A VIRTUAL COMPUTER
ASSEMBLY PROGRAMMING ON A VIRTUAL COMPUTER Pierre A. von Kaenel Mathematics and Computer Science Department Skidmore College Saratoga Springs, NY 12866 (518) 580-5292 pvonk@skidmore.edu ABSTRACT This paper
More informationExceptions in MIPS. know the exception mechanism in MIPS be able to write a simple exception handler for a MIPS machine
7 Objectives After completing this lab you will: know the exception mechanism in MIPS be able to write a simple exception handler for a MIPS machine Introduction Branches and jumps provide ways to change
More informationNumber Representation
Number Representation CS10001: Programming & Data Structures Pallab Dasgupta Professor, Dept. of Computer Sc. & Engg., Indian Institute of Technology Kharagpur Topics to be Discussed How are numeric data
More information(Refer Slide Time: 00:01:16 min)
Digital Computer Organization Prof. P. K. Biswas Department of Electronic & Electrical Communication Engineering Indian Institute of Technology, Kharagpur Lecture No. # 04 CPU Design: Tirning & Control
More informationProgramming Languages
Programming Languages Programming languages bridge the gap between people and machines; for that matter, they also bridge the gap among people who would like to share algorithms in a way that immediately
More informationMACHINE ARCHITECTURE & LANGUAGE
in the name of God the compassionate, the merciful notes on MACHINE ARCHITECTURE & LANGUAGE compiled by Jumong Chap. 9 Microprocessor Fundamentals A system designer should consider a microprocessor-based
More informationHigh-Level Programming Languages. Nell Dale & John Lewis (adaptation by Michael Goldwasser)
High-Level Programming Languages Nell Dale & John Lewis (adaptation by Michael Goldwasser) Low-Level Languages What are disadvantages of low-level languages? (e.g., machine code or assembly code) Programming
More informationCPU Organization and Assembly Language
COS 140 Foundations of Computer Science School of Computing and Information Science University of Maine October 2, 2015 Outline 1 2 3 4 5 6 7 8 Homework and announcements Reading: Chapter 12 Homework:
More informationUNIVERSITY OF CALIFORNIA, DAVIS Department of Electrical and Computer Engineering. EEC180B Lab 7: MISP Processor Design Spring 1995
UNIVERSITY OF CALIFORNIA, DAVIS Department of Electrical and Computer Engineering EEC180B Lab 7: MISP Processor Design Spring 1995 Objective: In this lab, you will complete the design of the MISP processor,
More informationInstruction Set Architecture
Instruction Set Architecture Consider x := y+z. (x, y, z are memory variables) 1-address instructions 2-address instructions LOAD y (r :=y) ADD y,z (y := y+z) ADD z (r:=r+z) MOVE x,y (x := y) STORE x (x:=r)
More information================================================================
==== ==== ================================================================ DR 6502 AER 201S Engineering Design 6502 Execution Simulator ================================================================
More informationTwo's Complement Adder/Subtractor Lab L03
Two's Complement Adder/Subtractor Lab L03 Introduction Computers are usually designed to perform indirect subtraction instead of direct subtraction. Adding -B to A is equivalent to subtracting B from A,
More informationPART B QUESTIONS AND ANSWERS UNIT I
PART B QUESTIONS AND ANSWERS UNIT I 1. Explain the architecture of 8085 microprocessor? Logic pin out of 8085 microprocessor Address bus: unidirectional bus, used as high order bus Data bus: bi-directional
More informationX86-64 Architecture Guide
X86-64 Architecture Guide For the code-generation project, we shall expose you to a simplified version of the x86-64 platform. Example Consider the following Decaf program: class Program { int foo(int
More informationHigh level code and machine code
High level code and machine code Teacher s Notes Lesson Plan x Length 60 mins Specification Link 2.1.7/cde Programming languages Learning objective Students should be able to (a) explain the difference
More informationInstruction Set Design
Instruction Set Design Instruction Set Architecture: to what purpose? ISA provides the level of abstraction between the software and the hardware One of the most important abstraction in CS It s narrow,
More informationIBCM: The Itty Bitty Computing Machine
Chapter 1 IBCM: The Itty Bitty Computing Machine The child receives data through the sense organs; the child also has some inborn processing capacities otherwise it would not be able to learn but in addition,
More informationCharacter Translation Methods
Supplement to: Irvine, Kip R. Assembly Language for Intel-Based Computers, 4th Edition. This file may be duplicated or printed for classroom use, as long as the author name, book title, and copyright notice
More informationAdvanced Computer Architecture-CS501. Computer Systems Design and Architecture 2.1, 2.2, 3.2
Lecture Handout Computer Architecture Lecture No. 2 Reading Material Vincent P. Heuring&Harry F. Jordan Chapter 2,Chapter3 Computer Systems Design and Architecture 2.1, 2.2, 3.2 Summary 1) A taxonomy of
More informationPROBLEMS (Cap. 4 - Istruzioni macchina)
98 CHAPTER 2 MACHINE INSTRUCTIONS AND PROGRAMS PROBLEMS (Cap. 4 - Istruzioni macchina) 2.1 Represent the decimal values 5, 2, 14, 10, 26, 19, 51, and 43, as signed, 7-bit numbers in the following binary
More informationThe previous chapter provided a definition of the semantics of a programming
Chapter 7 TRANSLATIONAL SEMANTICS The previous chapter provided a definition of the semantics of a programming language in terms of the programming language itself. The primary example was based on a Lisp
More informationBachelors of Computer Application Programming Principle & Algorithm (BCA-S102T)
Unit- I Introduction to c Language: C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating
More informationTEACHING COMPUTER ARCHITECTURE THROUGH SIMULATION (A BRIEF EVALUATION OF CPU SIMULATORS) *
TEACHING COMPUTER ARCHITECTURE THROUGH SIMULATION (A BRIEF EVALUATION OF CPU SIMULATORS) * Timothy Stanley, PhD Computer and Network Sciences, Utah Valley University, Orem, Utah 84058, 801 863-8978, TStanley@uvu.edu
More informationComputational Mathematics with Python
Computational Mathematics with Python Basics Claus Führer, Jan Erik Solem, Olivier Verdier Spring 2010 Claus Führer, Jan Erik Solem, Olivier Verdier Computational Mathematics with Python Spring 2010 1
More informationGeneral Certificate of Education Advanced Subsidiary Examination June 2015
General Certificate of Education Advanced Subsidiary Examination June 2015 Computing COMP1 Unit 1 Problem Solving, Programming, Data Representation and Practical Exercise Monday 1 June 2015 9.00 am to
More informationWeb Development using PHP (WD_PHP) Duration 1.5 months
Duration 1.5 months Our program is a practical knowledge oriented program aimed at learning the techniques of web development using PHP, HTML, CSS & JavaScript. It has some unique features which are as
More informationThe C Programming Language course syllabus associate level
TECHNOLOGIES The C Programming Language course syllabus associate level Course description The course fully covers the basics of programming in the C programming language and demonstrates fundamental programming
More informationProgramming Languages CIS 443
Course Objectives Programming Languages CIS 443 0.1 Lexical analysis Syntax Semantics Functional programming Variable lifetime and scoping Parameter passing Object-oriented programming Continuations Exception
More informationTraditional IBM Mainframe Operating Principles
C H A P T E R 1 7 Traditional IBM Mainframe Operating Principles WHEN YOU FINISH READING THIS CHAPTER YOU SHOULD BE ABLE TO: Distinguish between an absolute address and a relative address. Briefly explain
More informationComputational Mathematics with Python
Boolean Arrays Classes Computational Mathematics with Python Basics Olivier Verdier and Claus Führer 2009-03-24 Olivier Verdier and Claus Führer Computational Mathematics with Python 2009-03-24 1 / 40
More informationAdvanced Tornado TWENTYONE. 21.1 Advanced Tornado. 21.2 Accessing MySQL from Python LAB
21.1 Advanced Tornado Advanced Tornado One of the main reasons we might want to use a web framework like Tornado is that they hide a lot of the boilerplate stuff that we don t really care about, like escaping
More informationLab 2 : Basic File Server. Introduction
Lab 2 : Basic File Server Introduction In this lab, you will start your file system implementation by getting the following FUSE operations to work: CREATE/MKNOD, LOOKUP, and READDIR SETATTR, WRITE and
More informationName: Class: Date: 9. The compiler ignores all comments they are there strictly for the convenience of anyone reading the program.
Name: Class: Date: Exam #1 - Prep True/False Indicate whether the statement is true or false. 1. Programming is the process of writing a computer program in a language that the computer can respond to
More informationThomas Jefferson High School for Science and Technology Program of Studies Foundations of Computer Science. Unit of Study / Textbook Correlation
Thomas Jefferson High School for Science and Technology Program of Studies Foundations of Computer Science updated 03/08/2012 Unit 1: JKarel 8 weeks http://www.fcps.edu/is/pos/documents/hs/compsci.htm
More informationIntroduction to MIPS Programming with Mars
Introduction to MIPS Programming with Mars This week s lab will parallel last week s lab. During the lab period, we want you to follow the instructions in this handout that lead you through the process
More informationFall 2006 CS/ECE 333 Lab 1 Programming in SRC Assembly
Lab Objectives: Fall 2006 CS/ECE 333 Lab 1 Programming in SRC Assembly 1. How to assemble an assembly language program for the SRC using the SRC assembler. 2. How to simulate and debug programs using the
More informationWhat's New in BarTender 2016
What's New in BarTender 2016 WHITE PAPER Contents Introduction 3 64-bit BarTender Installation 3 Data Entry Forms 3 BarTender Integration Builder 3 BarTender Print Portal 3 Other Upgrades 3 64-bit BarTender
More informationAn Introduction to Assembly Programming with the ARM 32-bit Processor Family
An Introduction to Assembly Programming with the ARM 32-bit Processor Family G. Agosta Politecnico di Milano December 3, 2011 Contents 1 Introduction 1 1.1 Prerequisites............................. 2
More informationSQL Server Instance-Level Benchmarks with DVDStore
SQL Server Instance-Level Benchmarks with DVDStore Dell developed a synthetic benchmark tool back that can run benchmark tests against SQL Server, Oracle, MySQL, and PostgreSQL installations. It is open-sourced
More informationCS 2112 Spring 2014. 0 Instructions. Assignment 3 Data Structures and Web Filtering. 0.1 Grading. 0.2 Partners. 0.3 Restrictions
CS 2112 Spring 2014 Assignment 3 Data Structures and Web Filtering Due: March 4, 2014 11:59 PM Implementing spam blacklists and web filters requires matching candidate domain names and URLs very rapidly
More informationWESTMORELAND COUNTY PUBLIC SCHOOLS 2011 2012 Integrated Instructional Pacing Guide and Checklist Computer Math
Textbook Correlation WESTMORELAND COUNTY PUBLIC SCHOOLS 2011 2012 Integrated Instructional Pacing Guide and Checklist Computer Math Following Directions Unit FIRST QUARTER AND SECOND QUARTER Logic Unit
More informationForensic Analysis of Internet Explorer Activity Files
Forensic Analysis of Internet Explorer Activity Files by Keith J. Jones keith.jones@foundstone.com 3/19/03 Table of Contents 1. Introduction 4 2. The Index.dat File Header 6 3. The HASH Table 10 4. The
More informationA Python Tour: Just a Brief Introduction CS 303e: Elements of Computers and Programming
A Python Tour: Just a Brief Introduction CS 303e: Elements of Computers and Programming "The only way to learn a new programming language is by writing programs in it." -- B. Kernighan and D. Ritchie "Computers
More informationCentral Processing Unit Simulation Version v2.5 (July 2005) Charles André University Nice-Sophia Antipolis
Central Processing Unit Simulation Version v2.5 (July 2005) Charles André University Nice-Sophia Antipolis 1 1 Table of Contents 1 Table of Contents... 3 2 Overview... 5 3 Installation... 7 4 The CPU
More informationSystems I: Computer Organization and Architecture
Systems I: Computer Organization and Architecture Lecture : Microprogrammed Control Microprogramming The control unit is responsible for initiating the sequence of microoperations that comprise instructions.
More informationFile by OCR Manual. Updated December 9, 2008
File by OCR Manual Updated December 9, 2008 edocfile, Inc. 2709 Willow Oaks Drive Valrico, FL 33594 Phone 813-413-5599 Email sales@edocfile.com www.edocfile.com File by OCR Please note: This program is
More informationThe goal with this tutorial is to show how to implement and use the Selenium testing framework.
APPENDIX B: SELENIUM FRAMEWORK TUTORIAL This appendix is a tutorial about implementing the Selenium framework for black-box testing at user level. It also contains code examples on how to use Selenium.
More informationCS 301 Course Information
CS 301: Languages and Automata January 9, 2009 CS 301 Course Information Prof. Robert H. Sloan Handout 1 Lecture: Tuesday Thursday, 2:00 3:15, LC A5 Weekly Problem Session: Wednesday, 4:00 4:50 p.m., LC
More informationInstruction Set Architecture. Datapath & Control. Instruction. LC-3 Overview: Memory and Registers. CIT 595 Spring 2010
Instruction Set Architecture Micro-architecture Datapath & Control CIT 595 Spring 2010 ISA =Programmer-visible components & operations Memory organization Address space -- how may locations can be addressed?
More informationChapter 7D The Java Virtual Machine
This sub chapter discusses another architecture, that of the JVM (Java Virtual Machine). In general, a VM (Virtual Machine) is a hypothetical machine (implemented in either hardware or software) that directly
More informationThis presentation explains how to monitor memory consumption of DataStage processes during run time.
This presentation explains how to monitor memory consumption of DataStage processes during run time. Page 1 of 9 The objectives of this presentation are to explain why and when it is useful to monitor
More informationEE984 Laboratory Experiment 2: Protocol Analysis
EE984 Laboratory Experiment 2: Protocol Analysis Abstract This experiment provides an introduction to protocols used in computer communications. The equipment used comprises of four PCs connected via a
More informationProgramming Project 1: Lexical Analyzer (Scanner)
CS 331 Compilers Fall 2015 Programming Project 1: Lexical Analyzer (Scanner) Prof. Szajda Due Tuesday, September 15, 11:59:59 pm 1 Overview of the Programming Project Programming projects I IV will direct
More informationComputational Mathematics with Python
Numerical Analysis, Lund University, 2011 1 Computational Mathematics with Python Chapter 1: Basics Numerical Analysis, Lund University Claus Führer, Jan Erik Solem, Olivier Verdier, Tony Stillfjord Spring
More informationJonathan Worthington Scarborough Linux User Group
Jonathan Worthington Scarborough Linux User Group Introduction What does a Virtual Machine do? Hides away the details of the hardware platform and operating system. Defines a common set of instructions.
More informationEventia Log Parsing Editor 1.0 Administration Guide
Eventia Log Parsing Editor 1.0 Administration Guide Revised: November 28, 2007 In This Document Overview page 2 Installation and Supported Platforms page 4 Menus and Main Window page 5 Creating Parsing
More informationTCP/IP Networking, Part 2: Web-Based Control
TCP/IP Networking, Part 2: Web-Based Control Microchip TCP/IP Stack HTTP2 Module 2007 Microchip Technology Incorporated. All Rights Reserved. Building Embedded Web Applications Slide 1 Welcome to the next
More informationMoving from CS 61A Scheme to CS 61B Java
Moving from CS 61A Scheme to CS 61B Java Introduction Java is an object-oriented language. This document describes some of the differences between object-oriented programming in Scheme (which we hope you
More informationPROGRAMMABLE LOGIC CONTROLLERS Unit code: A/601/1625 QCF level: 4 Credit value: 15 OUTCOME 3 PART 1
UNIT 22: PROGRAMMABLE LOGIC CONTROLLERS Unit code: A/601/1625 QCF level: 4 Credit value: 15 OUTCOME 3 PART 1 This work covers part of outcome 3 of the Edexcel standard module: Outcome 3 is the most demanding
More informationIST639 Enterprise Technologies Course Syllabus Spring 2014
Location: Hinds Hall 117 Wednesday Nights 5:15 PM to 8:05 PM Doug Taber 315-558-2359 pdtaber@syr.edu Office Hours: By Appointment Course Overview IST639 builds the basic understanding of the technical
More informationwinhex Disk Editor, RAM Editor PRESENTED BY: OMAR ZYADAT and LOAI HATTAR
winhex Disk Editor, RAM Editor PRESENTED BY: OMAR ZYADAT and LOAI HATTAR Supervised by : Dr. Lo'ai Tawalbeh New York Institute of Technology (NYIT)-Jordan X-Ways Software Technology AG is a stock corporation
More informationPigCHAMP Knowledge Software. Enterprise Edition Installation Guide
PigCHAMP Knowledge Software Enterprise Edition Installation Guide Enterprise Edition Installation Guide MARCH 2012 EDITION PigCHAMP Knowledge Software 1531 Airport Rd Suite 101 Ames, IA 50010 Phone (515)
More informationA Simple Shopping Cart using CGI
A Simple Shopping Cart using CGI Professor Don Colton, BYU Hawaii March 5, 2004 In this section of the course, we learn to use CGI and Perl to create a simple web-based shopping cart program. We assume
More informationPerl in a nutshell. First CGI Script and Perl. Creating a Link to a Script. print Function. Parsing Data 4/27/2009. First CGI Script and Perl
First CGI Script and Perl Perl in a nutshell Prof. Rasley shebang line tells the operating system where the Perl interpreter is located necessary on UNIX comment line ignored by the Perl interpreter End
More informationProcedure: You can find the problem sheet on Drive D: of the lab PCs. 1. IP address for this host computer 2. Subnet mask 3. Default gateway address
Objectives University of Jordan Faculty of Engineering & Technology Computer Engineering Department Computer Networks Laboratory 907528 Lab.4 Basic Network Operation and Troubleshooting 1. To become familiar
More informationIBM Emulation Mode Printer Commands
IBM Emulation Mode Printer Commands Section 3 This section provides a detailed description of IBM emulation mode commands you can use with your printer. Control Codes Control codes are one-character printer
More informationJianjian Song LogicWorks 4 Tutorials (5/15/03) Page 1 of 14
LogicWorks 4 Tutorials Jianjian Song Department of Electrical and Computer Engineering Rose-Hulman Institute of Technology March 23 Table of Contents LogicWorks 4 Installation and update...2 2 Tutorial
More informationAP Computer Science Java Mr. Clausen Program 9A, 9B
AP Computer Science Java Mr. Clausen Program 9A, 9B PROGRAM 9A I m_sort_of_searching (20 points now, 60 points when all parts are finished) The purpose of this project is to set up a program that will
More informationCVE-2012-1535 Adobe Flash Player Integer Overflow Vulnerability Analysis
Your texte here. CVE-2012-1535 Adobe Flash Player Integer Overflow Vulnerability Analysis October 11 th, 2012 Brian MARIANI & Frédéric BOURLA A FEW WORDS ABOUT FLASH PLAYER Your Adobe texte Flash here
More informationInside the Java Virtual Machine
CS1Bh Practical 2 Inside the Java Virtual Machine This is an individual practical exercise which requires you to submit some files electronically. A system which measures software similarity will be used
More informationSymbol Tables. Introduction
Symbol Tables Introduction A compiler needs to collect and use information about the names appearing in the source program. This information is entered into a data structure called a symbol table. The
More informationAn overview of FAT12
An overview of FAT12 The File Allocation Table (FAT) is a table stored on a hard disk or floppy disk that indicates the status and location of all data clusters that are on the disk. The File Allocation
More informationLab 1: Introduction to C, ASCII ART and the Linux Command Line Environment
.i.-' `-. i..' `/ \' _`.,-../ o o \.' ` ( / \ ) \\\ (_.'.'"`.`._) /// \\`._(..: :..)_.'// \`. \.:-:. /.'/ `-i-->..
More informationCS 1133, LAB 2: FUNCTIONS AND TESTING http://www.cs.cornell.edu/courses/cs1133/2015fa/labs/lab02.pdf
CS 1133, LAB 2: FUNCTIONS AND TESTING http://www.cs.cornell.edu/courses/cs1133/2015fa/labs/lab02.pdf First Name: Last Name: NetID: The purpose of this lab is to help you to better understand functions:
More informationIntroduction to Perl
Introduction to Perl March 8, 2011 by Benjamin J. Lynch http://msi.umn.edu/~blynch/tutorial/perl.pdf Outline What Perl Is When Perl Should Be used Basic Syntax Examples and Hands-on Practice More built-in
More informationForm Validation. Server-side Web Development and Programming. What to Validate. Error Prevention. Lecture 7: Input Validation and Error Handling
Form Validation Server-side Web Development and Programming Lecture 7: Input Validation and Error Handling Detecting user error Invalid form information Inconsistencies of forms to other entities Enter
More informationData Integrator. Pervasive Software, Inc. 12365-B Riata Trace Parkway Austin, Texas 78727 USA
Data Integrator Event Management Guide Pervasive Software, Inc. 12365-B Riata Trace Parkway Austin, Texas 78727 USA Telephone: 888.296.5969 or 512.231.6000 Fax: 512.231.6010 Email: info@pervasiveintegration.com
More informationTZWorks Windows Event Log Viewer (evtx_view) Users Guide
TZWorks Windows Event Log Viewer (evtx_view) Users Guide Abstract evtx_view is a standalone, GUI tool used to extract and parse Event Logs and display their internals. The tool allows one to export all
More informationCS101 Lecture 26: Low Level Programming. John Magee 30 July 2013 Some material copyright Jones and Bartlett. Overview/Questions
CS101 Lecture 26: Low Level Programming John Magee 30 July 2013 Some material copyright Jones and Bartlett 1 Overview/Questions What did we do last time? How can we control the computer s circuits? How
More informationTo add a data form to excel - you need to have the insert form table active - to make it active and add it to excel do the following:
Excel Forms A data form provides a convenient way to enter or display one complete row of information in a range or table without scrolling horizontally. You may find that using a data form can make data
More information8051 MICROCONTROLLER COURSE
8051 MICROCONTROLLER COURSE Objective: 1. Familiarization with different types of Microcontroller 2. To know 8051 microcontroller in detail 3. Programming and Interfacing 8051 microcontroller Prerequisites:
More informationWhat to do when I have a load/store instruction?
76 What to do when I have a load/store instruction? Is there a label involved or a virtual address to compute? 1 A label (such as ldiq $T1, a; ldq $T0, ($T1);): a Find the address the label is pointing
More information