Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

CSCE 210: Computer Hardware Foundations - Homework 6 Solutions, Assignments of Computer Science

The solutions to homework 6 of the computer hardware foundations course, offered by csce 210 in fall 2008. Topics such as beowulf clusters, computer components, and ibm zseries architecture addresses. It also includes assembly program templates and examples for direct-offset addressing and arithmetic expressions.

Typology: Assignments

Pre 2010

Uploaded on 09/02/2009

koofers-user-kqi
koofers-user-kqi 🇺🇸

10 documents

1 / 3

Toggle sidebar

Related documents


Partial preview of the text

Download CSCE 210: Computer Hardware Foundations - Homework 6 Solutions and more Assignments Computer Science in PDF only on Docsity! CSCE 210: Computer Hardware Foundations Fall 2008 Homework 6 Solution 12/04/08 1. (1 point) Describe the two types of computer components with which Beowulf clusters are generally configured. (1) Commodity-off-the-shelf (COTS) components are simply inexpensive computers connected together to form a Beowulf cluster. (2) Blade components are computers mounted on a board that can be plugged into connectors on a rack. The backplane of the rack provides power and the dedicated Ethernet connection to each blade. 2. (1 point) Discuss the three types of addresses used in the IBM zSeries architecture and explain the translation between these types of addresses. The zSeries defines three types of addresses: virtual address (logical address), real address, and absolute address. Virtual addresses are the addresses generated from instructions. Virtual addresses are first translated into real addresses, and then into absolute addresses. The virtual address is divided into segment index, page index, and offset fields. The current address space register contains a pointer to a segment table, then via segment table lookup and page table lookup the virtual address is translated into real address. A translation from real address to absolute address is required because the first 8KB of physical memory in a zSeries CPU are restricted for special purposes. The zSeries provides an additional level of translation called prefixing. The real space for each CPU is called real storage. A prefix register in each CPU holds a value that corresponds to an 8KB block. For real addresses between 0 and 8191, the prefix is concatenated with the 13 low-order bits of the address to form the absolute address. Conversely, real addresses in the region that the prefix register points to are translated in the other direction, to absolute addresses between 0 and 8191. All other real addresses and absolute addresses remain the same. *The next two problems require you to write short assembly programs. Please use the following template for your programs: TITLE Program Template (Template.asm) ; Program Description: ; Author: ; Creation Date: ; Revisions: ; Date: Modified by: INCLUDE Irvine32.inc .data ; (insert variables here) .code main PROC ; (insert executable instructions here) exit main ENDP ; (insert additional procedures here) END main 3. (2 points) Use the following variables in your assembly program: .data Uarray WORD 1000h,2000h,3000h,4000h Write instructions that use direct-offset addressing to move the four values in Uarray to the EAX, EBX, ECX, and EDX registers, such that when you follow this with a call DumpRegs statement, the following register values should display: EAX=00004000 EBX=00002000 ECX=00003000 EDX=00001000 --- TITLE DirectOffset (DirectOffset.asm) ; Program Description: ; Author: ; Creation Date: ; Revisions: ; Date: Modified by: INCLUDE Irvine32.inc .data Uarray WORD 1000h,2000h,3000h,4000h .code main PROC mov edx,0 mov dx,Uarray mov ebx,0 mov bx,Uarray+2 mov ecx,0 mov cx,Uarray+4 mov eax,0 mov ax,Uarray+6 call DumpRegs exit main ENDP END main 4. (2 points) Write an assembly program that implements the following arithmetic expression: EAX = –val2 + val1 – 5 + val3 Use the following data definitions in your program: val1 SDWORD -8
Docsity logo



Copyright © 2024 Ladybird Srl - Via Leonardo da Vinci 16, 10126, Torino, Italy - VAT 10816460017 - All rights reserved