Internal Operations
Extracts from this document...
Introduction
Bruce Sloan 9684555 BTEC National Certificate for ICT Practitioners Computer Systems Assignment 1 - Internal Operations 1) Explain why ASCII codes are either 7-bit or 8-bit but are always stored as single byte lengths. Give six examples of ASCII codes, covering alphabetic, numeric, punctuation and control characters. Show their binary and hexadecimal values. ASCII is, strictly, a seven-bit code, meaning it uses the bit patterns representable with seven binary digits (a range of 0 to 127 decimal) to represent character information. At the time ASCII was introduced, many computers dealt with eight-bit groups (bytes or, more specifically, octets) as the smallest unit of information; the eighth bit was commonly used as a parity bit for error checking on communication lines or other device-specific functions. Machines which did not use parity typically set the eighth bit to zero, though some systems such as Prime machines running PRIMOS set the eighth bit of ASCII characters to one. The original ASCII only used 7-binary digits and was referred to as a 7 bit code, also hence the code only extending to 127. Over the evolution of time the code became 8-bit to increase the code to 128 allowing additional characters. They are always stored as single byte lengths due to the system allowing the process this data either way. The 8-bit standards of ASCII are just a further extension or development though the original 7-bit ASCII remains the most common character encodings used today. ...read more.
Middle
left or right until the value of the number is in the range: 1 < n < 2 This is known as normalisation. Since the first digit is now always going to be 1 there is no need to encode this digit. The mantissa only includes the digits after the point and the leading 1 is assumed. The number shown above is -1.1011 0011 01*28 In un-normalised form this is -110110011.01 4) Write a short account of data representation in a computer. Include details of where each format is used and consider any errors likely to occur due to inappropriate use of formats. Most data structures are abstract structures and are implemented by the programmer with a series of assembly language instructions. Many cardinal data types (bits, bit strings, bit slices, binary integers, binary floating point numbers, binary encoded decimals, binary addresses, characters, etc.) are implemented directly in hardware for at least parts of the instruction set. Some processors also implement some data structures in hardware for some instructions - for example, most processors have a few instructions for directly manipulating character strings. An assembly language programmer has to know how the hardware implements these cardinal data types. Some examples: Two basic issues are bit ordering (big endian or little endian) and number of bits (or bytes). The assembly language programmer must also pay attention to word length and optimum (or required) ...read more.
Conclusion
memory location ans = $0852 //defines location to save .ORG start LDA #num1 //the accumulator is loaded with a predefined value STA loc1 //that value is then copied from the accumulator into location in memory LDA #num2 //the accumulator is loaded with another predefined value STA loc2 //that value is then copied from the accumulator into location in memory LDA loc1 //the initial value is fetched from memory and loaded into the accumulator ADC loc2 //the other value is fetched from memory and added to the accumulator STA ans //the end result is then stored into memory .END 8) Extend the scope of your code in Q7 to allow a block of data ( 8 bytes) in memory to be summed and the final sum stored in memory. You must include a flow diagram and comprehensive comments explaining the action of your code. Start = $0800 //sets the start address Number = 8 //sets number to 8 .ORG start main LDX #0 //load X register immediate - 0 LDA table,x //load accumulator indexed - x LDY #number //load Y register with number immediate Again JSR sub1 //jump to subroutine DEY //decrement the Y register BNE again //branch if zero flag clear STA answer //store accumalator Here JMP here //jump to another location sub1 INX //increment the X register ADC table,x //add with carry RTS //return from subroutine Table .DB 5,10,15,20,25,30,35,40 Answer = table+number ?? ?? ?? ?? COMPANY CONFIDENTIAL ...read more.
This student written piece of work is one of many that can be found in our AS and A Level Computer Science section.
Found what you're looking for?
- Start learning 29% faster today
- 150,000+ documents available
- Just £6.99 a month