Chapter 2 Assemblers. PDF created with FinePrint pdffactory Pro trial version

Size: px
Start display at page:

Download "Chapter 2 Assemblers. PDF created with FinePrint pdffactory Pro trial version"

Transcription

1 Chapter 2 Assemblers 1 PDF created with FinePrint pdffactry Pr trial versin

2 Outline 2.1 Basic Assembler Functins 2.2 Machine-Dependent Assembler Features 2.3 Machine-Independent Assembler Features 2.4 Assembler Design Optins 2.5 Implementatin Examples 2 PDF created with FinePrint pdffactry Pr trial versin

3 Intrductin t Assemblers Fundamental functins Translate mnemnic peratin cdes t their machine language equivalents Assign machine addresses t symblic labels used by the prgrammer The feature and design f an assembler depend Surce language it translate The machine language it prduce 3 PDF created with FinePrint pdffactry Pr trial versin

4 2.1 Basic Assembler Functins Assembler A prgram that accepts an assembly language prgram as input and prduces its machine language equivalent alng with infrmatin fr the lader 4 PDF created with FinePrint pdffactry Pr trial versin

5 2.1 Basic Assembler Functins (Cnt.) Cnstructins f assembly language prgram Instructin Label mnemnic perand Operand Direct addressing E.g. LDA ZERO Immediate addressing E.g. LDA #0 Indexed addressing E.g. STCH BUFFER, X Indirect addressing E.g 5 PDF created with FinePrint pdffactry Pr trial versin

6 2.1 Basic Assembler Functins (Cnt.) Cnstructins f assembly language prgram (Cnt.) Data Label BYTE value Label WORD value Label RESB value Label RESW value Label: name f perand value: integer, character E.g. EOF BYTE C EOF E.g. FIVE WORD 5 6 PDF created with FinePrint pdffactry Pr trial versin

7 Assembler Directives Pseud-instructins Nt translated int machine instructins Prvide instructins t the assembler itself Basic assembler directives START: specify name and starting address f the prgram END: specify end f prgram and (ptin) the first executable instructin in the prgram If nt specified, use the address f the first executable instructin BYTE: direct the assembler t generate cnstants WORD RESB: : instruct the assembler t reserve memry lcatin withut generating data values RESW 7 PDF created with FinePrint pdffactry Pr trial versin

8 Example f a SIC Assembler Language Prgram (Fig 2.1) Gal: Reads recrds frm input device (cde F1) Cpies them t utput device (cde 05) Lp until end f the file is detected Write EOF n the utput device Terminate by executing an RSUB instructin t return t the perating system Assume this prgram is called by OS using JSUB 8 PDF created with FinePrint pdffactry Pr trial versin

9 Example f a SIC Assembler Language Prgram (Fig 2.1) (Cnt.) Data transfer (RD, WD) methd fr each recrd A buffer is used t stre recrd Buffering is necessary fr different I/O rate devices The end f each recrd is marked with a NULL character (00 16 ) The end f file is indicated by a zer-length recrd Subrutines (JSUB, RSUB) are used RDREC, WRREC Save link register first befre nested jump 9 PDF created with FinePrint pdffactry Pr trial versin

10 Example f a SIC Assembler Language Prgram (Fig 2.2) Shw the generated bject cde fr each statement in Fig. 2.1 Lc clumn shws the machine address fr each part f the assembled prgram Assume prgram starts at address 1000 All instructins, data, r reserved strage are sequential arranged accrding t their rder in surce prgram. A lcatin cunter is used t keep track the address changing 10 PDF created with FinePrint pdffactry Pr trial versin

11 Example f a SIC Assembler Language Prgram (Fig 2.1,2.2) 11 PDF created with FinePrint pdffactry Pr trial versin

12 Example f a SIC Assembler Language Prgram (Fig 2.1,2.2) (Cnt.) 12 PDF created with FinePrint pdffactry Pr trial versin

13 Example f a SIC Assembler Language Prgram (Fig 2.1,2.2) (Cnt.) 13 PDF created with FinePrint pdffactry Pr trial versin

14 Functins f a Basic Assembler Cnvert mnemnic peratin cdes t their machine language equivalents E.g. STL -> 14 (line 10) Cnvert symblic perands t their equivalent machine addresses E.g. RETADR -> 1033 (line 10) Build the machine instructins in the prper frmat Cnvert the data cnstants t internal machine representatins E.g. EOF -> 454F46 (line 80) Write the bject prgram and the assembly listing 14 PDF created with FinePrint pdffactry Pr trial versin

15 Functins f a Basic Assembler (Cnt.) All f abve functins can be accmplished by sequential prcessing f the surce prgram Except number 2 in prcessing symblic perands Example 10 STL RETADR RETADR is nt yet defined when we encunter STL instructin Called frward reference 15 PDF created with FinePrint pdffactry Pr trial versin

16 Symblic Operands (Renew) We re nt likely t write memry addresses directly in ur cde. Instead, we will define variable names. Other examples f symblic perands Labels (fr jump instructins) Subrutines Cnstants 16 PDF created with FinePrint pdffactry Pr trial versin

17 Address Translatin Prblem Frward reference A reference t a label that is defined later in the prgram We will be unable t prcess this statement As a result, mst assemblers make 2 passes ver the surce prgram 1 st pass: scan label definitins and assign addresses 2 nd pass: actual translatin (bject cde) 17 PDF created with FinePrint pdffactry Pr trial versin

18 Functins f Tw Pass Assembler Pass 1 -define symbls (assign addresses) Assign addresses t all statements in the prgram Save the values assigned t all labels fr use in Pass 2 Prcess sme assembler directives Pass 2 -assemble instructins and generate bject prgram Assemble instructins Generate data values defined by BYTE, WORD, etc. Prcess the assembler directives nt dne in Pass 1 Write the bject prgram and the assembly listing 18 PDF created with FinePrint pdffactry Pr trial versin

19 Object Prgram Finally, assembler must write the generated bject cde t sme utput device Called bject prgram Will be later laded int memry fr executin 19 PDF created with FinePrint pdffactry Pr trial versin

20 Object Prgram (Cnt.) Cntains 3 types f recrds: Header recrd: Cl. 1 Cl. 2-7 Cl Cl Text recrd Cl.1 Cl.2-7 Cl. 8-9 Cl End recrd Cl.1 Cl.2~7 H Prgram name Starting address (hex) Length f bject prgram in bytes (hex) T Starting address in this recrd (hex) Length f bject cde in this recrd in bytes (hex) Object cde (hex) (2 clumns per byte) E Address f first executable instructin (hex) (END prgram_name) 20 PDF created with FinePrint pdffactry Pr trial versin

21 Object Prgram fr Fig 2.2 (Fig 2.3) Prgram name,starting address (hex),length f bject prgram in bytes (hex) Address f first executable instructin (hex) Starting address (hex),length f bject cde in this recrd (hex),object cde (hex) 21 PDF created with FinePrint pdffactry Pr trial versin

22 2.1.2 Assembler Algrithm and Data Structures Algrithm Tw-pass assembler Data Structures Operatin Cde Table (OPTAB) Symbl Table (SYMTAB) Lcatin Cunter (LOCCTR) 22 PDF created with FinePrint pdffactry Pr trial versin

23 Internal Data Structures OPTAB (peratin cde table) Cntent Menmnicmachine cde and its machine language equivalent May als include instructin frmat, length etc. Usage Pass 1: used t lp up and validate peratin cdes in the surce prgram Pass 2: used t translate the peratin cdes t machine language Characteristics Static table, predefined when the assembler is written Implementatin Array r hash table with mnemnic peratin cde as the key (preferred) Ref. Appendix A 23 PDF created with FinePrint pdffactry Pr trial versin

24 Internal Data Structures (Cnt.) SYMTAB (symbl table) Cntent Usage Label name and its value (address) May als include flag (type, length) etc. Pass 1: labels are entered int SYMTAB with their address (frm LOCCTR) as they are encuntered in the surce prgram Pass 2: symbls used as perands are lked up in SYMTAB t btain the address t be inserted in the assembled instructin Characteristic Dynamic table (insert, delete, search) Implementatin Hash table fr efficiency f insertin and retrieval 24 PDF created with FinePrint pdffactry Pr trial versin

25 Internal Data Structures (Cnt.) Lcatin Cunter A variable used t help in assignment f addresses Initialized t the beginning address specified in the START statement Cunted in bytes 25 PDF created with FinePrint pdffactry Pr trial versin

26 Algrithm fr 2 Pass Assembler (Fig 2.4) Figure 2.4 (a): algrithm fr pass 1 f assembler Figure 2.4 (b): algrithm fr pass 2 f assembler 26 PDF created with FinePrint pdffactry Pr trial versin

27 Algrithm fr 2 Pass Assembler (Fig 2.4) Bth pass1 and pass 2 need t read the surce prgram. Hwever, pass 2 needs mre infrmatin Lcatin cunter value, errr flags Intermediate file Cntains each surce statement with its assigned address, errr indicatrs, etc Used as the input t Pass 2 27 PDF created with FinePrint pdffactry Pr trial versin

28 Intermediate File Surce Prgram LABEL, OPCODE, OPERAND Pass 1 assembler Intermediate file Pass 2 assembler Object Prgram LOCCTR OPTAB SYMTAB 28 PDF created with FinePrint pdffactry Pr trial versin

29 Algrithm fr Pass 1 f Assembler (Fig 2.4a) 29 PDF created with FinePrint pdffactry Pr trial versin

30 PDF created with FinePrint pdffactry Pr trial versin 30

31 Algrithm fr Pass 2 f Assembler (Fig 2.4b) 31 PDF created with FinePrint pdffactry Pr trial versin

32 PDF created with FinePrint pdffactry Pr trial versin 32

33 Assembler Design Machine Dependent Assembler Features instructin frmats and addressing mdes prgram relcatin Machine Independent Assembler Features literals symbl-defining statements expressins prgram blcks cntrl sectins and prgram linking Assembler design Optins ne-pass assemblers multi-pass assemblers 33 PDF created with FinePrint pdffactry Pr trial versin

34 2.2 Machine Dependent Assembler Features Machine Dependent Assembler Features SIC/XE Instructin frmats and addressing mdes Prgram relcatin 34 PDF created with FinePrint pdffactry Pr trial versin

35 SIC/XE Assembler Previus, we knw hw t implement the 2- pass SIC assembler. What s new fr SIC/XE? Mre addressing mdes. Prgram Relcatin. 35 PDF created with FinePrint pdffactry Pr trial versin

36 SIC/XE Assembler (Cnt.) SIC/XE Immediate addressing: p #c Indirect addressing: PC-relative r Base-relative addressing: p m The assembler directive BASE is used with base-relative addressing If displacements are t large t fit int a 3-byte instructin, then 4-byte extended frmat is used Extended frmat: +p m Indexed addressing: p m, x Register-t-register instructins Large memry Supprt multiprgramming and need prgram reallcatin capability 36 PDF created with FinePrint pdffactry Pr trial versin

37 Example f a SIC/XE Prgram (Fig 2.5) Imprve the executin speed Register-t-register instructins Immediate addressing: p #c Operand is already present as part f the instructin Indirect addressing: Often avid the need f anther instructin 37 PDF created with FinePrint pdffactry Pr trial versin

38 Example f a SIC/XE Prgram (Fig 2.5,2.6) 38 PDF created with FinePrint pdffactry Pr trial versin

39 Example f a SIC/XE Prgram (Fig 2.5,2.6) (Cnt.) 39 PDF created with FinePrint pdffactry Pr trial versin

40 Example f a SIC/XE Prgram (Fig 2.5,2.6) (Cnt.) 40 PDF created with FinePrint pdffactry Pr trial versin

41 2.2.1 Instructin Frmats and Addressing Mdes START nw specifies a beginning prgram address f 0 Indicate a relcatableprgram Register translatin Fr example: COMPR A, S => A004 Must keep the register name (A, X, L, B, S, T, F, PC, SW) and their values (0,1, 2, 3, 4, 5, 6, 8, 9) Keep in SYMTAB 41 PDF created with FinePrint pdffactry Pr trial versin

42 Address Translatin Mst register-t-memry instructins are assembled using PC relative r base relative addressing Assembler must calculate a displacement as part f the bject instructin If displacement can be fit int 12-bit field, frmat 3 is used. Frmat 3: 12-bit address field Base-relative: 0~4095 PC-relative: -2048~2047 Assembler attempts t translate using PC-relative first, then base-relative If displacement in PC-relative is ut f range, then try base-relative 42 PDF created with FinePrint pdffactry Pr trial versin

43 Address Translatin (Cnt.) If displacement can nt be fit int 12-bit field in the bject instructin, frmat 4 must be used. Frmat 4: 20-bit address field N displacement need t be calculated. 20-bit is large enugh t cntain the full memry address Prgrammer must specify extended frmat: +p m Fr example: +JSUB RDREC => 4B LOC(RDREC) = 1036, get it frm SYMTAB 43 PDF created with FinePrint pdffactry Pr trial versin

44 PC-Relative Addressing Mdes FIRST STL RETADR 17202D Displacement= RETADR (PC) = 30-3 = 2D Opcde(6 bits) =14 16 = nixbpe= n=1, i = 1: indicate neither indirect nr immediate addressing p = 1: indicate PC-relative addressing OPCODE n i x b p e Address (02D) 16 Object Cde = 17202D 44 PDF created with FinePrint pdffactry Pr trial versin

45 PC-Relative Addressing Mdes (Cnt.) J CLOOP 3F2FEC Displacement= CLOOP - (PC) = 6-1A = -14 = FEC (2 s cmplement fr negative number) Opcde=3C 16 = nixbpe= OPCODE n i x b p e Address (FEC) 16 Object Cde = 3F2FEC 45 PDF created with FinePrint pdffactry Pr trial versin

46 Base-Relative Addressing Mdes Base register is under the cntrl f the prgrammer Prgrammer use assembler directive BASE t specify which value t be assigned t base register (B) Assembler directive NOBASE: infrm the assembler that the cntents f base register n lnger be used fr addressing BASE and NOBASE prduce n executable cde 46 PDF created with FinePrint pdffactry Pr trial versin

47 Base-Relative Addressing Mdes (Cnt.) 12 LDB #LENGTH 13 BASE LENGTH ;n bject cde E STCH BUFFER, X 57C003 Displacement= BUFFER (B) = (=LOC(LENGTH)) = 3 Opcde=54 nixbpe= n=1, i = 1: indicate neither indirect nr immediate addressing x = 1: indexed addressing b = 1: base-relative addressing OPCODE n i x b p e Address (003) 16 Object Cde = 57C PDF created with FinePrint pdffactry Pr trial versin

48 Address Translatin Assembler attempts t translate using PC-relative first, then base-relative e.g STX LENGTH Try PC-relative first Displacement= LENGTH - (PC) = = (hex) Try base-relative next displacement= LENGTH (B) = =0 Opcde=10 nixbpe= n=1, i = 1: indicate neither indirect nr immediate addressing b = 1: base-relative addressing 48 PDF created with FinePrint pdffactry Pr trial versin

49 Immediate Address Translatin Cnvert the immediate perand t its internal representatin and insert it int the instructin LDA # Opcde=00 nixbpe= i = 1: immediate addressing OPCODE n i x b p e Address (003) 16 Object Cde = PDF created with FinePrint pdffactry Pr trial versin

50 Immediate Address Translatin (Cnt.) C +LDT # Opcde=74 nixbpe= i = 1: immediate addressing e = 1: extended instructin frmat since 4096 is t large t fit int the 12-bit displacement field OPCODE n i x b p e Address (01000) 16 Object Cde = PDF created with FinePrint pdffactry Pr trial versin

51 Immediate Address Translatin (Cnt.) LDB #LENGTH 69202D The immediate perand is the symbl LENGTH The address f LENGTH is laded int register B Displacement=LENGTH (PC) = = 02D Opcde=68 16 = nixbpe= Cmbined PC relative (p=1) with immediate addressing (i=1) OPCODE n i x b p e Address (02D) PDF created with FinePrint pdffactry Pr trial versin

52 Immediate Address Translatin (Cnt.) LDA # Opcde= = nixbpe= i = 1: immediate addressing OPCODE n i x b pp e Address (02D) PDF created with FinePrint pdffactry Pr trial versin

53 Indirect Address Translatin Indirect addressing The cntents stred at the lcatin represent the address f the perand, nt the perand itself Target addressing is cmputed as usual (PCrelative r BASE-relative) n bit is set t 1 53 PDF created with FinePrint pdffactry Pr trial versin

54 Indirect Address Translatin (Cnt.) A 3E2003 Displacement= RETADR-(PC) = D =3 Opcde= 3C nixbpe= n = 1: indirect addressing p = 1: PC-relative addressing OPCODE n i x b p e Address (003) PDF created with FinePrint pdffactry Pr trial versin

55 Nte Ref: Appendix A 55 PDF created with FinePrint pdffactry Pr trial versin

56 2.2.2 Prgram Relcatin The larger main memry f SIC/XE Several prgrams can be laded and run at the same time. This kind f sharing f the machine between prgrams is called multiprgramming T take full advantage Lad prgrams int memry wherever there is rm Nt specifying a fixed address at assembly time Called prgram relcatin 56 PDF created with FinePrint pdffactry Pr trial versin

57 2.2.2 Prgram Relcatin (Cnt.) Abslute prgram (r abslute assembly) Prgram must be laded at the address specified at assembly time. E.g. Fig. 2.1 prgram lading starting address 1000 COPY START 1000 FIRST STL RETADR : : e.g B LDA THREE 00102D What if the prgram is laded t 2000 e.g B LDA THREE 00202D Each abslute address shuld be mdified 57 PDF created with FinePrint pdffactry Pr trial versin

58 Example f Prgram Relcatin (Fig 2.7) 58 PDF created with FinePrint pdffactry Pr trial versin

59 2.2.2 Prgram Relcatin (Cnt.) Relcatable prgram COPY START 0 FIRST STL RETADR : : prgram lading starting address is determined at lad time An bject prgram that cntains the infrmatin necessary t perfrm address mdificatin fr relcatin The assembler must identify fr the lader thse parts f bject prgram that need mdificatin. N instructin mdificatin is needed fr Immediate addressing (nt a memry address) PC-relative, Base-relative addressing The nly parts f the prgram that require mdificatin at lad time are thse that specify direct addresses In SIC/XE, nly fund in extended frmat instructins 59 PDF created with FinePrint pdffactry Pr trial versin

60 Instructin Frmat vs. Relcatable Lader In SIC/XE Frmat 1, 2, 3 Nt affect Frmat 4 In SIC Shuld be mdified Frmat 3 with address field Shuld be mdified SIC des nt supprt PC-relative and base-relative addressing 60 PDF created with FinePrint pdffactry Pr trial versin

61 RelcatablePrgram We use mdificatin recrds that are added t the bject files. Pass the address mdificatin infrmatin t the relcatablelader Mdificatin recrd Cl 1 M Cl 2-7 Starting lcatin f the address field t be mdified, relative t the beginning f the prgram (hex) Cl 8-9 length f the address field t be mdified, in half-bytes E.g M^000007^05 Beginning address f the prgram is t be added t a field that begins at addrx and is 5 bytes in length. 61 PDF created with FinePrint pdffactry Pr trial versin

62 Object Prgram fr Fig 2.6 (Fig 2.8) 62 PDF created with FinePrint pdffactry Pr trial versin

63 2.3 Machine-Independent Assembler Features Literals Symbl-Defining Statements Expressins Prgram Blcks Cntrl Sectins and Prgram Linking 63 PDF created with FinePrint pdffactry Pr trial versin

64 2.3.1 Literals Design idea Let prgrammers t be able t write the value f a cnstant perand as a part f the instructin that uses it. This avids having t define the cnstant elsewhere in the prgram and make up a label fr it. Such an perand is called a literal because the value is stated literally in the instructin. A literal is identified with the prefix = Examples A ENDFILLDA =C EOF WLOOPTD =X 05 E PDF created with FinePrint pdffactry Pr trial versin

65 Original Prgram (Fig. 2.6) 65 PDF created with FinePrint pdffactry Pr trial versin

66 Using Literal (Fig. 2.9) 66 PDF created with FinePrint pdffactry Pr trial versin

67 Object Prgram Using Literal The same as befre 67 PDF created with FinePrint pdffactry Pr trial versin

68 Original Prgram (Fig. 2.6) 68 PDF created with FinePrint pdffactry Pr trial versin

69 Using Literal (Fig. 2.9) 69 PDF created with FinePrint pdffactry Pr trial versin

70 Object Prgram Using Literal The same as befre 70 PDF created with FinePrint pdffactry Pr trial versin

71 Object Prgram Using Literal (Fig 2.9 & 2.10) 71 PDF created with FinePrint pdffactry Pr trial versin

72 Object Prgram Using Literal (Fig 2.9 & 2.10) (Cnt.) 72 PDF created with FinePrint pdffactry Pr trial versin

73 Object Prgram Using Literal (Fig 2.9 & 2.10) (Cnt.) 73 PDF created with FinePrint pdffactry Pr trial versin

74 Literals vs. Immediate Operands Immediate Operands The perand value is assembled as part f the machine instructin e.g LDA # Literals Similar t define cnstant The assembler generates the specified value as a cnstant at sme ther memry lcatin The effect f using a literal is exactly the same as if the prgrammer had defined the cnstant and used the label assigned t the cnstant as the instructin perand. e.g A ENDFIL LDA =C EOF (Fig. 2.9) Cmpare (Fig. 2.6) e.g A ENDFIL LDA EOF D EOF BYTE C EOF 454F46 74 PDF created with FinePrint pdffactry Pr trial versin

75 Literal - Implementatin Literal pls All f the literal perands are gathered tgether int ne r mre literal pls Nrmally, literal are placed at the end f the bject prgram, i.e., fllwing the END statement by the assembler E.g., Fig (END statement) 255 END FIRST 1076 * =X PDF created with FinePrint pdffactry Pr trial versin

76 Literal Implementatin (Cnt.) In sme case, prgrammer wuld like t place literals int a pl at sme ther lcatin in the bject prgram Using assembler directive LTORG (see Fig. 2.10) Create a literal pl that cntains all f the literal perands used since the previus LTORG e.g., A ENDFIL LDA =C EOF (Fig.2.10) 93 LTORG 002D * =C EOF 454F46 Reasn: keep the literal perand clse t the instructin referencing it Allw PC-relative addressing pssible 76 PDF created with FinePrint pdffactry Pr trial versin

77 Literal - Implementatin (Cnt.) Same symbls, nly ne address is assigned Duplicate literals e.g WLOOP TD =X 05 e.g B WD =X 05 The assemblers shuld recgnize duplicate literals and stre nly ne cpy f the specified data value Cmpare the character strings defining them E.g., =X 05 Easier t implement, but has ptential prblem (see next) Or cmpare the generated data value E.g.theliterals =C EOF and =X 454F46 wuld specify identical perand value. Better, but will increase the cmplexity f the assembler 77 PDF created with FinePrint pdffactry Pr trial versin

78 Literal - Implementatin (Cnt.) Be careful when using literal whse value depends n their lcatin in the prgram Fr example, a literal may represent the current value f the lcatin cunter Dented by * LDB =* may result in different bject cde when it appear in different lcatin Cannt cnsider as duplicate literals 78 PDF created with FinePrint pdffactry Pr trial versin

79 Basic Data Structure fr Assembler t Handle Literal Operands Data Structure: literal table - LITTAB Cntent Literal name The perand value and length Address assigned t the perand Implementatin Organized as a hash table, using literal name r value as key. 79 PDF created with FinePrint pdffactry Pr trial versin

80 Hw the Assembler Handles Literals? Pass 1 Build LITTAB with literal name, perand value and length, (leaving the address unassigned). Handle duplicate literals. (Ignre duplicate literals) When encunter LTORG statement r end f the prgram, assign an address t each literal nt yet assigned an address Remember t update the PC value t assign each literal s address Pass 2 Search LITTAB fr each literal perand encuntered Generate data values in the bject prgram exactly as if they are generated by BYTE r WORD statements Generate mdificatin recrd fr literals that represent an address in the prgram (e.g. a lcatin cunter value) 80 PDF created with FinePrint pdffactry Pr trial versin

81 2.3.2 Symbl-Defining Statements Labels n instructins r data areas The value f such a label is the address assigned t the statement n which it appears Defining symbls All prgrammer t define symbls and specify their values Frmat: symbl EQU value Value can be cnstant r expressin invlving cnstants and previusly defined symbls Example MAXLEN EQU LDT #MAXLEN 81 PDF created with FinePrint pdffactry Pr trial versin

82 2.3.2 Symbl-Defining Statements (Cnt.) Usage: Make the surce prgram easier t understand Hw assembler handles it? In pass 1: when the assembler encunters the EQU statement, it enters the symbl int SYMTAB fr later reference. In pass 2: assemble the instructin with the value f the symbl Fllw the previus apprach 82 PDF created with FinePrint pdffactry Pr trial versin

83 Examples f Symbl-Defining Statements E.g. +LDT #4096 (Fig 2.5) MAXLEN EQU LDT #MAXLEN E.g. define mnemnic names fr registers A EQU 0 X EQU 1 L EQU 2 E.g. define names that reflect the lgical functin f the registers in the prgram BASE EQU R1 COUNT EQU R2 INDEX EQU R3 83 PDF created with FinePrint pdffactry Pr trial versin

84 ORG ORG (rigin) Assembler directive: ORG value Value can be cnstant r expressin invlving cnstants and previusly defined symbls Assembler resets the lcatin cunter (LOCCTR) t the specified value LOCCTR cntrl assignment f strage in the bject prgram 84 PDF created with FinePrint pdffactry Pr trial versin

85 Example f Using ORG Cnsider the fllwing data structure SYMBOL: 6 bytes VALUE: 3 bytes (ne wrd) FLAGS: 2 bytes we want t refer t every field f each entry 85 PDF created with FinePrint pdffactry Pr trial versin

86 ORG Example Using EQU statements STAB RESB 1100 SYMBOL EQU STAB VALUE EQU STAB+6 FLAG EQU STAB+9 We can fetch the VALUE field by LDA VALUE,X X = 0, 11, 22, fr each entry Refer t entries in the table using indexed addressing 86 PDF created with FinePrint pdffactry Pr trial versin

87 ORG Example (Cnt.) Using ORG statements STAB RESB 1100 ORG SYMBOL RESB 6 VALUE RESW 1 FLAGS RESB 2 ORG STAB STAB+1100 This methd f definitin makes the structure mre clear. The last ORG is very imprtant Set the LOCCTR t STAB Size f field mre meaningful Restre the LOCCTR t its previus value Set prgram cunter (LOCCTR) back t its previus value 87 PDF created with FinePrint pdffactry Pr trial versin

88 Frward Reference All symbl-defining directives d nt allw frward reference fr 2-pass assembler e.g., EQU, ORG All symbls used n the right-hand side f the statement must have been defined previusly E.g. (Cannt be assembled in 2-pass assm.) ALPHA EQU BETA BETA EQU DELTA DELTA RESW 1 88 PDF created with FinePrint pdffactry Pr trial versin

89 Frward Reference (Cnt.) E.g. (Cannt be assembled in 2-pass assm.) ORG ALPHA BYTE1 RESB 1 BYTE2 RESB 1 BYTE3 RESB 1 ORG ALPHA RESB 1 89 PDF created with FinePrint pdffactry Pr trial versin

90 2.3.3 Expressins Mst assemblers allw the use f expressin t replace symbl in the perand field. Expressin is evaluated by the assembler Frmed accrding t the rules using the peratrs +, -, *, / Divisin is usually defined t prduce an integer result Individual terms can be Cnstants User-defined symbls Special terms: e.g., * (= current value f lcatin cunter) 90 PDF created with FinePrint pdffactry Pr trial versin

91 2.3.3 Expressins (Cnt.) Review Values in the bject prgram are relative t the beginning f the prgram r abslute (independent f prgram lcatin) Fr example Cnstants: abslute Labels: relative 91 PDF created with FinePrint pdffactry Pr trial versin

92 2.3.3 Expressins (Cnt.) Expressins can als be classified as abslute expressins r relative expressins E.g. (Fig 2.9) 107 MAXLEN EQU BUFEND-BUFFER Bth BUFEND and BUFFER are relative terms, representing addresses within the prgram Hwever the expressin BUFEND-BUFFER represents an abslute value: the difference between the tw addresses When relative terms are paired with ppsite signs The dependency n the prgram starting address is canceled ut The result is an abslute value 92 PDF created with FinePrint pdffactry Pr trial versin

93 2.3.3 Expressins (Cnt.) Abslute expressins An expressin that cntains nly abslute terms An expressin that cntain relative terms but in pairs and the terms in each such pair have ppsite signs Relative expressins All f the relative terms except ne can be paired and the remaining unpaired relative terms must have a psitive sign N relative terms can enter int a multiplicatin r divisin peratin n matter in abslute r relative expressin 93 PDF created with FinePrint pdffactry Pr trial versin

94 2.3.3 Expressins (Cnt.) Errrs: (represent neither abslute values nr lcatins within the prgram) BUFEND+BUFFER // nt ppsite terms 100-BUFFER // nt in pair 3*BUFFER // multiplicatin 94 PDF created with FinePrint pdffactry Pr trial versin

95 2.3.3 Expressins (Cnt.) Assemblers shuld determine the type f an expressin Keep track f the types f all symbls defined in the prgram in the symbl table. Generate Mdificatin recrds in the bject prgram fr relative values. SYMTAB fr Fig Symbl Type Value RETADR R 30 BUFFER R 36 BUFEND R 1036 MAXLEN A PDF created with FinePrint pdffactry Pr trial versin

96 2.3.4 Prgram Blcks Previusly, main prgram, subrutines, and data area are treated as a unit and are assembled at the same time. Althugh the surce prgram lgically cntains subrutines, data area, etc, they were assembled int a single blck f bject cde T imprve memry utilizatin, main prgram, subrutines, and data blcks may be allcated in separate areas. Tw appraches t prvide such a flexibility: Prgram blcks Segments f cde that are rearranged within a single bject prgram unit Cntrl sectins Segments f cde that are translated int independent bject prgram units 96 PDF created with FinePrint pdffactry Pr trial versin

97 2.3.4 Prgram Blcks Slutin 1: Prgram blcks Refer t segments f cde that are rearranged within a single bject prgram unit Assembler directive: USE blckname Indicates which prtins f the surce prgram belng t which blcks. Cdes r data with same blck name will allcate tgether At the beginning, statements are assumed t be part f the unnamed (default) blck If n USE statements are included, the entire prgram belngs t this single blck. 97 PDF created with FinePrint pdffactry Pr trial versin

98 2.3.4 Prgram Blcks (Cnt.) E.g: Figure 2.11 Three blcks First: unnamed, i.e., default blck Line 5~ Line 70 + Line 123 ~ Line Line 208 ~ Line 245 Secnd: CDATA Line 92 ~ Line Line 183 ~ Line Line 252 ~ Line 255 Third: CBLKS Line 105 ~ Line 107 Each prgram blck may actually cntain several separate segments f the surce prgram. The assembler will (lgically) rearrange these segments t gather tgether the pieces f each blck. 98 PDF created with FinePrint pdffactry Pr trial versin

99 Prgram with Multiple Prgram Blcks (Fig 2.11 & 2.12) 99 PDF created with FinePrint pdffactry Pr trial versin

100 Prgram with Multiple Prgram Blcks (Fig 2.11 & 2.12) (Cnt.) 100 PDF created with FinePrint pdffactry Pr trial versin

101 Prgram with Multiple Prgram Blcks (Fig 2.11 & 2.12) 101 PDF created with FinePrint pdffactry Pr trial versin

102 Basic Data Structure fr Assembler t Handle Prgram Blcks Blck name table Blck name, blck number, address, length Blck name Blck number Address Length (default) CDATA B CBLKS PDF created with FinePrint pdffactry Pr trial versin

103 Hw the Assembler Handles Prgram Blcks? Pass 1 Maintaining separate lcatin cunter fr each prgram blck Each label is assigned an address that is relative t the start f the blck that cntains it When labels are entered int SYMTAB, the blck name r number is stred alng with the assigned relative addresses. At the end f Pass 1, the latest value f the lcatin cunter fr each blck indicates the length f that blck The assembler can then assign t each blck a starting address in the bject prgram 103 PDF created with FinePrint pdffactry Pr trial versin

104 Hw the Assembler Handles Prgram Blcks? (Cnt.) Pass 2 The address f each symbl can be cmputed by adding the assigned blck starting address and the relative address f the symbl t the start f its blck The assembler needs the address fr each symbl relative t the start f the bject prgram, nt the start f an individual prgram blck 104 PDF created with FinePrint pdffactry Pr trial versin

105 Table fr Prgram Blcks At the end f Pass 1 in Fig 2.11: 105 PDF created with FinePrint pdffactry Pr trial versin

106 Example f Address Calculatin Each surce line is given a relative address assigned and a blck number Lc/Blck Clumn in Fig Fr an abslute symbl (whse value is nt relative t the start f any prgram blck), there is n blck number E.g MAXLEN EQU BUFEND-BUFFER Example: calculatin f address in Pass LDA LENGTH LENGTH = (blck 1 starting address)+0003 = = 0069 LOCCTR = (blck 0 starting address)+0009 = 0009 PC-relative: Displacement = (LOCCTR) = = PDF created with FinePrint pdffactry Pr trial versin

107 2.3.4 Prgram Blcks (Cnt.) Prgram blcks reduce addressing prblem: N needs fr extended frmat instructins (lines 15, 35, 65) The larger buffer is mved t the end f the bject prgram N needs fr base relative addressing (line 13, 14) The larger buffer is mved t the end f the bject prgram LTORG is used t make sure the literals are placed ahead f any large data areas (line 253) Prevent literal definitin frm its usage t far 107 PDF created with FinePrint pdffactry Pr trial versin

108 2.3.4 Prgram Blcks (Cnt.) Object cde It is nt necessary t physically rearrange the generated cde in the bject prgram t place the pieces f each prgram blck tgether. Lader will lad the bject cde frm each recrd at the indicated addresses. Fr example (Fig. 2.13) The first tw Text recrds are generated frm line 5~70 When the USE statement is recgnized Assembler writes ut the current Text recrd, even if there still rm left in it Begin a new Text recrd fr the new prgram blck 108 PDF created with FinePrint pdffactry Pr trial versin

109 Object Prgram Crrespnding t Fig (Fig. 2.13) 109 PDF created with FinePrint pdffactry Pr trial versin

110 Prgram blcks fr the Assembly and Lading Prcesses (Fig. 2.14) same rder Rearrangement thrugh lading 110 PDF created with FinePrint pdffactry Pr trial versin

111 2.3.5 Cntrl Sectins and Prgram Linking Cntrl sectins A part f the prgram that maintains its identity after reassembly Each cntrl sectin can be laded and relcated independently Prgrammer can assemble, lad, and manipulate each f these cntrl sectins separately Often used fr subrutines r ther lgical subdivisins f a prgram 111 PDF created with FinePrint pdffactry Pr trial versin

112 2.3.5 Cntrl Sectins and Prgram Linking (Cnt.) Instructin in ne cntrl sectin may need t refer t instructins r data lcated in anther sectin Called external reference Hwever, assembler have n idea where any ther cntrl sectins will be lcated at executin time The assembler has t generate infrmatin fr such kind f references, called external references, that will allw the lader t perfrm the required linking. 112 PDF created with FinePrint pdffactry Pr trial versin

113 Prgram Blcks v.s. Cntrl Sectins Prgram blcks Refer t segments f cde that are rearranged with a single bject prgram unit Cntrl sectins Refer t segments that are translated int independent bject prgram units 113 PDF created with FinePrint pdffactry Pr trial versin

114 Illustratin f Cntrl Sectins and Prgram Linking (Fig 2.15 & 2.16) First cntrl sectin: COPY Implicitly defined as an external symbl Define external symbls External reference 114 PDF created with FinePrint pdffactry Pr trial versin

115 Illustratin f Cntrl Sectins and Prgram Linking (Fig 2.15 & 2.16) (Cnt.) Secnd cntrl sectin: RDREC External reference 115 PDF created with FinePrint pdffactry Pr trial versin

116 Illustratin f Cntrl Sectins and Prgram Linking (Fig 2.15 & 2.16) (Cnt.) 116 PDF created with FinePrint pdffactry Pr trial versin

117 2.3.5 Cntrl Sectins and Prgram Linking (Cnt.) Assembler directive: secname CSECT Signal the start f a new cntrl sectin e.g. 109 RDREC CSECT e.g. 193 WRREC CSECT START als identifies the beginning f a sectin External references References between cntrl sectins The assembler generates infrmatin fr each external reference that will allws the lader t perfrm the required linking. 117 PDF created with FinePrint pdffactry Pr trial versin

118 External Definitin and References External definitin Assembler directives: EXTDEF name [, name] EXTDEF names symbls, called external symbls, that are defined in this cntrl sectin and may be used by ther sectins Cntrl sectin names d nt need t be named in an EXTDEF statement (e.g., COPY, RDREC, and WRREC) They are autmatically cnsidered t be external symbls External reference Assembler directives: EXTREF name [,name] EXTREF names symbls that are used in this cntrl sectin and are defined elsewhere 118 PDF created with FinePrint pdffactry Pr trial versin

119 2.3.5 Cntrl Sectins and Prgram Linking (Cnt.) Any instructin whse perand invlves an external reference Insert an address f zer and pass infrmatin t the lader Cause the prper address t be inserted at lad time Relative addressing is nt pssible The address f external symbl have n predictable relatinship t anything in this cntrl sectin An extended frmat instructin must be used t prvide enugh rm fr the actual address t be inserted 119 PDF created with FinePrint pdffactry Pr trial versin

120 Example f External Definitin and References Example CLOOP +JSUB RDREC 4B STCH BUFFER,X MAXLEN WORD BUFEND-BUFFER PDF created with FinePrint pdffactry Pr trial versin

121 Hw the Assembler Handles Cntrl Sectins? The assembler must include infrmatin in the bject prgram that will cause the lader t insert prper values where they are required Define recrd: gives infrmatin abut external symbls named by EXTDEF Cl. 1 D Cl. 2-7 Name f external symbl defined in this sectin Cl Relative address within this cntrl sectin (hex) Cl Repeat infrmatin in Cl fr ther external symbls Refer recrd: lists symbls used as external references, i.e., symbls named by EXTREF Cl. 1 R Cl. 2-7 Name f external symbl referred t in this sectin Cl Name f ther external reference symbls 121 PDF created with FinePrint pdffactry Pr trial versin

122 Hw the Assembler Handles Cntrl Sectins? (Cnt.) Mdificatin recrd (revised) Cl. 1 M Cl. 2-7 Starting address f the field t be mdified (hex) Cl. 8-9 Length f the field t be mdified, in half-bytes (hex) Cl. 10 Mdificatin flag (+ r -) Cl External symbl whse value is t be added t r subtracted frm the indicated field. Cntrl sectin name is autmatically an external symbl, it is available fr use in Mdificatin recrds. Example (Figure 2.17) M000004^05^+RDREC M000011^05^+WRREC M000024^05^+WRREC M000028^06^+BUFEND //Line 190 BUFEND-BUFFER M000028^06^-BUFFER 122 PDF created with FinePrint pdffactry Pr trial versin

123 Object Prgram Crrespnding t Fig (Fig. 2.17) 123 PDF created with FinePrint pdffactry Pr trial versin

124 Object Prgram Crrespnding t Fig (Fig. 2.17) (Cnt.) 124 PDF created with FinePrint pdffactry Pr trial versin

125 Object Prgram Crrespnding t Fig (Fig. 2.17) (Cnt.) 125 PDF created with FinePrint pdffactry Pr trial versin

126 Prgram Linking & Relcatin Nte: the revised Mdificatin recrd may still be used t perfrm prgram relcatin. E.g. (Fig. 2.8.) M M M are changed t M COPY //add the beginning address f its sectin M COPY M COPY S the same mechanism can be used fr prgram relcatin and fr prgram linking. 126 PDF created with FinePrint pdffactry Pr trial versin

127 External References in Expressin Earlier definitins Required all f the relative terms be paired in an expressin (an abslute expressin), r that all except ne be paired (a relative expressin) New restrictin Bth terms in each pair must be relative within the same cntrl sectin Ex: BUFEND-BUFFER: Legal Ex: RDREC-COPY: illegal 127 PDF created with FinePrint pdffactry Pr trial versin

128 External References in Expressin (Cnt.) Hwever, when an expressin invlves external references, the assembler cannt determine whether r nt the expressin is legal. Hw t enfrce this restrictin The assembler evaluates all f the terms it can, cmbines these t frm an initial expressin value, and generates Mdificatin recrds. The lader checks the expressin fr errrs and finishes the evaluatin. 128 PDF created with FinePrint pdffactry Pr trial versin

129 2.4 Assembler Design Optins One-pass assemblers Multi-pass assemblers 129 PDF created with FinePrint pdffactry Pr trial versin

130 2.4.1 One-Pass Assemblers Gal: avid a secnd pass ver the surce prgram Main prblem Frward references t data items r labels n instructins Slutin Data items: require all such areas be defined befre they are referenced Label n instructins: cannt be eliminated E.g. the lgic f the prgram ften requires a frward jump It is t incnvenient if frward jumps are nt permitted 130 PDF created with FinePrint pdffactry Pr trial versin

131 Tw Types f One-Pass Assemblers: Lad-and-g assembler Prduces bject cde directly in memry fr immediate executin The ther assembler Prduces usual kind f bject cde fr later executin 131 PDF created with FinePrint pdffactry Pr trial versin

132 Lad-and-G Assembler N bject prgram is written ut, n lader is needed Useful fr prgram develpment and testing Avids the verhead f writing the bject prgram ut and reading it back in Bth ne-pass and tw-pass assemblers can be designed as lad-and-g Hwever, ne-pass als avids the verhead f an additinal pass ver the surce prgram Fr a lad-and-g assembler, the actual address must be knwn at assembly time. 132 PDF created with FinePrint pdffactry Pr trial versin

133 Frward Reference Handling in One-pass Assembler When the assembler encunter an instructin perand that has nt yet been defined: 1. The assembler mits the translatin f perand address 2. Insert the symbl int SYMTAB, if nt yet exist, and mark this symbl undefined 3. The address that refers t the undefined symbl is added t a list f frward references assciated with the symbl table entry 4. When the definitin fr a symbl is encuntered 1. The frward reference list fr that symbl is scanned 2. The prper address fr the symbl is inserted int any instructins previus generated. 133 PDF created with FinePrint pdffactry Pr trial versin

134 Handling Frward Reference in One-pass Assembler (Cnt.) At the end f the prgram Any SYMTAB entries that are still marked with * indicate undefined symbls Be flagged by the assembler as errrs Search SYMTAB fr the symbl named in the END statement and jump t this lcatin t begin executin f the assembled prgram. 134 PDF created with FinePrint pdffactry Pr trial versin

135 Sample Prgram fr a One-Pass Assembler (Fig. 2.18) 135 PDF created with FinePrint pdffactry Pr trial versin

136 Sample Prgram fr a One-Pass Assembler (Fig. 2.18) (Cnt.) 136 PDF created with FinePrint pdffactry Pr trial versin

137 Sample Prgram fr a One-Pass Assembler (Fig. 2.18) (Cnt.) 137 PDF created with FinePrint pdffactry Pr trial versin

138 Example Fig (a) Shw the bject cde in memry and symbl table entries after scanning line 40 Line 15: frward reference (RDREC) Object cde is marked ---- Value in symbl table is marked as * (undefined) Insert the address f perand (2013) in a list assciated with RDREC Line 30 and Line 35: fllw the same prcedure 138 PDF created with FinePrint pdffactry Pr trial versin

139 Object Cde in Memry and SYMTAB After scanning line PDF created with FinePrint pdffactry Pr trial versin

140 Example (Cnt.) Fig (b) Shw the bject cde in memry and symbl table entries after scanning line 160 Line 45: ENDFIL was defined Assembler place its value in the SYMTAB entry Insert this value int the address (at 201C) as directed by the frward reference list Line 125: RDREC was defined Fllw the same prcedure Line 65 and 155 Tw new frward reference (WRREC and EXIT) 140 PDF created with FinePrint pdffactry Pr trial versin

141 Object Cde in Memry and SYMTAB After scanning line PDF created with FinePrint pdffactry Pr trial versin

142 Object Cde in Memry and SYMTAB Entries fr Fig 2.18 (Fig. 2.19b) 142 PDF created with FinePrint pdffactry Pr trial versin

143 One-Pass Assembler Prducing Object Cde Frward reference are entered int the symbl table s list as befre If the perand cntains an undefined symbl, use 0 as the address and write the Text recrd t the bject prgram. Hwever, when definitin f a symbl is encuntered, the assembler must generate anther Text recrd with the crrect perand address. When the prgram is laded, this address will be inserted int the instructin by lader. The bject prgram recrds must be kept in their riginal rder when they are presented t the lader 143 PDF created with FinePrint pdffactry Pr trial versin

144 Example In Fig Secnd Text recrd cntains the bject cde generated frm lines 10 thrugh 40 The perand addressed fr the instructin n line 15, 30, 35 have been generated as 0000 When the definitin f ENDFIL is encuntered Generate the third Text recrd Specify the value 2024 ( the address f ENDFIL) is t be laded at lcatin 201C ( the perand field f JEQ in line 30) Thus, the value 2024 will replace the 0000 previusly laded 144 PDF created with FinePrint pdffactry Pr trial versin

145 Object Prgram frm ne-pass assembler fr Fig 2.18 (Fig 2.20) 201C 145 PDF created with FinePrint pdffactry Pr trial versin

146 2.4.2 Multi-Pass Assemblers Mtivatin: fr a 2-pass assembler, any symbl used n the right-hand side shuld be defined previusly. N frward references since symbls value can t be defined during the first pass E.g. APLHA EQU BETA BETA EQU DELTA DELTA RESW1 Nt allwed! 146 PDF created with FinePrint pdffactry Pr trial versin

147 Multi-Pass Assemblers (Cnt.) Multi-pass assemblers Eliminate the restrictin n EQU and ORG Make as many passes as are needed t prcess the definitins f symbls. Implementatin T facilitate symbl evaluatin, in SYMTAB, each entry must indicates which symbls are dependent n the values f it Each entry keeps a linking list t keep track f whse symbls value depend n an this entry 147 PDF created with FinePrint pdffactry Pr trial versin

148 Example f Multi-pass Assembler Operatin (fig 2.21a) HALFSZ EQU MAXLEN/2 MAXLEN EQU BUFEND-BUFFER PREVBT EQU BUFFER-1... BUFFER RESB 4096 BUFEND EQU * 148 PDF created with FinePrint pdffactry Pr trial versin

149 Example f Multi-Pass Assembler Operatin (Fig 2.21b) &1: ne system in the defining expressin is undefined HALFSZ EQU MAXLEN/2 MAXLEN EQU BUFEND-BUFFER PREVBT EQU BUFFER-1... BUFFER RESB 4096 BUFEND EQU * *: undefined A list f the symbls whse values depend n MAXLEN 149 PDF created with FinePrint pdffactry Pr trial versin

150 Example f Multi-Pass Assembler Operatin (Fig 2.21c) HALFSZ EQU MAXLEN/2 MAXLEN EQU BUFEND-BUFFER PREVBT EQU BUFFER-1... BUFFER RESB 4096 BUFEND EQU * 150 PDF created with FinePrint pdffactry Pr trial versin

151 Example f Multi-pass Assembler Operatin (fig 2.21d) HALFSZ EQU MAXLEN/2 MAXLEN EQU BUFEND-BUFFER PREVBT EQU BUFFER-1... BUFFER RESB 4096 BUFEND EQU * 151 PDF created with FinePrint pdffactry Pr trial versin

152 Example f Multi-pass Assembler Operatin (fig 2.21e) HALFSZ EQU MAXLEN/2 MAXLEN EQU BUFEND-BUFFER PREVBT EQU BUFFER-1... BUFFER RESB 4096 BUFEND EQU * Suppse Buffer =* = (PC)= PDF created with FinePrint pdffactry Pr trial versin

153 Example f Multi-pass Assembler Operatin (Fig 2.21f) BUFEND=*(PC)= = = HALFSZ EQU MAXLEN/2 MAXLEN EQU BUFEND-BUFFER PREVBT EQU BUFFER-1... BUFFER RESB 4096 BUFEND EQU * 153 PDF created with FinePrint pdffactry Pr trial versin

154 2.5 Implementatin Examples Micrsft MASM Assembler Sun SparcAssembler IBM AIX Assembler 154 PDF created with FinePrint pdffactry Pr trial versin

155 2.5.1 Micrsft MASM Assembler Micrsft MASM assembler fr Pentium and ther x86 systems Prgrammer f an x86 system views memry as a cllectin f segments 155 PDF created with FinePrint pdffactry Pr trial versin

156 Micrsft MASM Assembler (Cnt.) An MASM assembler language prgram is written as a cllectin f segments. Each segment is defined as belnging t a particular class: CODE, DATA, CONST, STACK Assembler directive: SEGMENT Similar t prgram blcks in SIC All parts f a segment are gathered tgether by assembler Segment registers are autmatically set by the system lader when a prgram is laded fr executin: CS (cde), SS (stack), DS (data), ES, FS, GS Assembler directive: ASSUME By default, assembler assumes all references t data segments use register DS We can change by the assembler directive ASSUME e.g. ASSUME ES:DATASEG2 Tell the assembler that register ES indicate the segment DATASEG2 Thus, any reference t labels are defined in DATASEG2 will be assembled using register ES Similar t BASE directive in SIC/XE BASE tell a SIC/XE assembler the cntents f register B ASSUME tell MASM the cntents f a segment register 156 PDF created with FinePrint pdffactry Pr trial versin

Assemblers. System Software by Leland L. Beck. Chapter 2

Assemblers. System Software by Leland L. Beck. Chapter 2 Assemblers System Software by Leland L. Beck Chapter 2 1 Role of Assembler Source Program Assembler Object Code Linker Executable Code Loader 2 Chapter 2 -- Outline Basic Assembler Functions Machine-dependent

More information

UNIT II ASSEMBLERS www.noyesengine.com www.technoscriptz.com 1 1. BASIC ASSEMBLER FUNCTIONS 2. A SIMPLE SIC ASSEMBLER 3. ASSEMBLER ALGORITHM AND DATA STRUCTURES 4. MACHINE DEPENDENT ASSEMBLER FEATURES

More information

Unit 2 -- Outline. Basic Assembler Functions Machine-dependent Assembler Features Machine-independent Assembler Features Assembler Design Options

Unit 2 -- Outline. Basic Assembler Functions Machine-dependent Assembler Features Machine-independent Assembler Features Assembler Design Options Unit 2 -- Outline Basic Assembler Functions Machine-dependent Assembler Features Machine-independent Assembler Features Assembler Design Options Introduction to Assemblers Fundamental functions translating

More information

Chapter 2. Assembler Design

Chapter 2. Assembler Design Chapter 2 Assembler Design Assembler is system software which is used to convert an assembly language program to its equivalent object code. The input to the assembler is a source code written in assembly

More information

UNIT II ASSEMBLERS. Figure Assembler

UNIT II ASSEMBLERS. Figure Assembler 2.1 Basic assembler functions UNIT II ASSEMBLERS Assembler Assembler which converts assembly language programs into object files. Object files contain a combination of machine instructions, data, and information

More information

Computer Organization and Architecture

Computer Organization and Architecture Campus de Gualtar 4710-057 Braga UNIVERSIDADE DO MINHO ESCOLA DE ENGENHARIA Departament de Infrmática Cmputer Organizatin and Architecture 5th Editin, 2000 by William Stallings Table f Cntents I. OVERVIEW.

More information

$ARCSIGHT_HOME/current/user/agent/map. The files are named in sequential order such as:

$ARCSIGHT_HOME/current/user/agent/map. The files are named in sequential order such as: Lcatin f the map.x.prperties files $ARCSIGHT_HOME/current/user/agent/map File naming cnventin The files are named in sequential rder such as: Sme examples: 1. map.1.prperties 2. map.2.prperties 3. map.3.prperties

More information

Chapter 6 Delivery and Routing of IP Packets. PDF created with FinePrint pdffactory Pro trial version

Chapter 6 Delivery and Routing of IP Packets. PDF created with FinePrint pdffactory Pro trial version Chapter 6 Delivery and Ruting f IP Packets PDF created with FinePrint pdffactry Pr trial versin www.pdffactry.cm Outline Cnnectin Delivery Ruting methds Static and dynamic ruting Ruting table and mdule

More information

CS1150 Principles of Computer Science Midterm Review

CS1150 Principles of Computer Science Midterm Review CS1150 Principles f Cmputer Science Midterm Review Yanyan Zhuang Department f Cmputer Science http://www.cs.uccs.edu/~yzhuang CS1150 UC. Clrad Springs Office hurs 10/15, Mnday, 12:05 12:50pm 10/17, Wednesday

More information

ARM Programmer s Model

ARM Programmer s Model ARM Prgrammer s Mdel Hsung-Pin Chang Department f Cmputer Science Natinal Chung Hsing University PDF created with FinePrint pdffactry Pr trial versin www.pdffactry.cm Outline ARM Data Types ARM Prcessr

More information

- Replacement of a single statement with a sequence of statements(promotes regularity)

- Replacement of a single statement with a sequence of statements(promotes regularity) ALGOL - Java and C built using ALGOL 60 - Simple and cncise and elegance - Universal - Clse as pssible t mathematical ntatin - Language can describe the algrithms - Mechanically translatable t machine

More information

MIPS Architecture and Assembly Language Overview

MIPS Architecture and Assembly Language Overview MIPS Architecture and Assembly Language Overview Adapted frm: http://edge.mcs.dre.g.el.edu/gicl/peple/sevy/architecture/mipsref(spim).html [Register Descriptin] [I/O Descriptin] Data Types and Literals

More information

Lab 1 - Calculator. K&R All of Chapter 1, 7.4, and Appendix B1.2

Lab 1 - Calculator. K&R All of Chapter 1, 7.4, and Appendix B1.2 UNIVERSITY OF CALIFORNIA, SANTA CRUZ BOARD OF STUDIES IN COMPUTER ENGINEERING CMPE13/L: INTRODUCTION TO PROGRAMMING IN C SPRING 2012 Lab 1 - Calculatr Intrductin In this lab yu will be writing yur first

More information

Chapter 2 Assemblers Machine-Dependent Assembler Features

Chapter 2 Assemblers Machine-Dependent Assembler Features Chapter 2 Assemblers -- 2.2 Machine-Dependent Assembler Features Outline Instruction format and addressing mode Program relocation Instruction format and addressing mode PC-relative or Base-relative addressing

More information

Computer Organization and Architecture

Computer Organization and Architecture Campus de Gualtar 4710-057 Braga UNIVERSIDADE DO MINHO ESCOLA DE ENGENHARIA Departament de Infrmática Cmputer Organizatin and Architecture 5th Editin, 2000 by William Stallings Table f Cntents I. OVERVIEW.

More information

Eastern Mediterranean University School of Computing and Technology Information Technology Lecture2 Functions

Eastern Mediterranean University School of Computing and Technology Information Technology Lecture2 Functions Eastern Mediterranean University Schl f Cmputing and Technlgy Infrmatin Technlgy Lecture2 Functins User Defined Functins Why d we need functins? T make yur prgram readable and rganized T reduce repeated

More information

LAB 7 (June 29/July 4) Structures, Stream I/O, Self-referential structures (Linked list) in C

LAB 7 (June 29/July 4) Structures, Stream I/O, Self-referential structures (Linked list) in C LAB 7 (June 29/July 4) Structures, Stream I/O, Self-referential structures (Linked list) in C Due: July 9 (Sun) 11:59 pm 1. Prblem A Subject: Structure declaratin, initializatin and assignment. Structure

More information

1.Program to find factorial of a given number

1.Program to find factorial of a given number 1.Program to find factorial of a given number DATA SEGMENT X DW 06H FACT DW? DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX MOV AX,01H ;Set the value of AX as 01H. MOV CX,X

More information

Gechstudentszone.wordpress.com

Gechstudentszone.wordpress.com CHAPTER -2 2.1 Basic Assembler Functions: The basic assembler functions are: ASSEMBLERS-1 Translating mnemonic language code to its equivalent object code. Assigning machine addresses to symbolic labels.

More information

CS2422 Assembly Language & System Programming

CS2422 Assembly Language & System Programming CS2422 Assembly Language & System Programming December 7, 2006 Today s Topic Assembler: Machine Dependent Features SIC/XE Program Relocation Modification Records in an Object File. Study Guide Sections

More information

CS1150 Principles of Computer Science Introduction (Part II)

CS1150 Principles of Computer Science Introduction (Part II) Principles f Cmputer Science Intrductin (Part II) Yanyan Zhuang Department f Cmputer Science http://www.cs.uccs.edu/~yzhuang UC. Clrad Springs Review Terminlgy Class } Every Java prgram must have at least

More information

CS2422 Assembly Language & System Programming

CS2422 Assembly Language & System Programming CS2422 Assembly Language & System Programming November 30, 2006 Today s Topic Assembler: Basic Functions Section 2.1 of Beck s System Software book. Reading Assignment: pages 43-52. Role of Assembler Source

More information

Introduction SIC, RISC & CISC 0. Introduction to Systems Programming This course aims at: Understanding what is going on behind the scenes The design and implementation of system software, such as Assemblers

More information

Xilinx Answer Xilinx PCI Express DMA Drivers and Software Guide

Xilinx Answer Xilinx PCI Express DMA Drivers and Software Guide Xilinx Answer 65444 Xilinx PCI Express DMA Drivers and Sftware Guide Imprtant Nte: This dwnladable PDF f an Answer Recrd is prvided t enhance its usability and readability. It is imprtant t nte that Answer

More information

Ascii Art Capstone project in C

Ascii Art Capstone project in C Ascii Art Capstne prject in C CSSE 120 Intrductin t Sftware Develpment (Rbtics) Spring 2010-2011 Hw t begin the Ascii Art prject Page 1 Prceed as fllws, in the rder listed. 1. If yu have nt dne s already,

More information

Lab 1 - Calculator. K&R All of Chapter 1, 7.4, and Appendix B1.2 Iterative Code Design handout Style Guidelines handout

Lab 1 - Calculator. K&R All of Chapter 1, 7.4, and Appendix B1.2 Iterative Code Design handout Style Guidelines handout UNIVERSITY OF CALIFORNIA, SANTA CRUZ BOARD OF STUDIES IN COMPUTER ENGINEERING CMPE13/L: INTRODUCTION TO PROGRAMMING IN C SPRING 2013 Lab 1 - Calculatr Intrductin Reading Cncepts In this lab yu will be

More information

Creating a TES Encounter/Transaction Entry Batch

Creating a TES Encounter/Transaction Entry Batch Creating a TES Encunter/Transactin Entry Batch Overview Intrductin This mdule fcuses n hw t create batches fr transactin entry in TES. Charges (transactins) are entered int the system in grups called batches.

More information

Lab 5 Sorting with Linked Lists

Lab 5 Sorting with Linked Lists UNIVERSITY OF CALIFORNIA, SANTA CRUZ BOARD OF STUDIES IN COMPUTER ENGINEERING CMPE13/L: INTRODUCTION TO PROGRAMMING IN C WINTER 2013 Lab 5 Srting with Linked Lists Intrductin Reading This lab intrduces

More information

COP2800 Homework #3 Assignment Spring 2013

COP2800 Homework #3 Assignment Spring 2013 YOUR NAME: DATE: LAST FOUR DIGITS OF YOUR UF-ID: Please Print Clearly (Blck Letters) YOUR PARTNER S NAME: DATE: LAST FOUR DIGITS OF PARTNER S UF-ID: Please Print Clearly Date Assigned: 15 February 2013

More information

INTERNAL TEST (SCHEME AND SOLUTION)

INTERNAL TEST (SCHEME AND SOLUTION) PES Institute of Technology, Bangalore South Campus (Formerly PES School of Engineering) (Hosur Road, 1KM before Electronic City, Bangalore-560 100) Dept of MCA INTERNAL TEST (SCHEME AND SOLUTION) 1 Subject

More information

Data Structure Interview Questions

Data Structure Interview Questions Data Structure Interview Questins A list f tp frequently asked Data Structure interview questins and answers are given belw. 1) What is Data Structure? Explain. Data structure is a way that specifies hw

More information

INSTALLING CCRQINVOICE

INSTALLING CCRQINVOICE INSTALLING CCRQINVOICE Thank yu fr selecting CCRQInvice. This dcument prvides a quick review f hw t install CCRQInvice. Detailed instructins can be fund in the prgram manual. While this may seem like a

More information

Municode Website Instructions

Municode Website Instructions Municde Website instructins Municde Website Instructins The new and imprved Municde site allws yu t navigate t, print, save, e-mail and link t desired sectins f the Online Cde f Ordinances with greater

More information

Due Date: Lab report is due on Mar 6 (PRA 01) or Mar 7 (PRA 02)

Due Date: Lab report is due on Mar 6 (PRA 01) or Mar 7 (PRA 02) Lab 3 Packet Scheduling Due Date: Lab reprt is due n Mar 6 (PRA 01) r Mar 7 (PRA 02) Teams: This lab may be cmpleted in teams f 2 students (Teams f three r mre are nt permitted. All members receive the

More information

Programming Project: Building a Web Server

Programming Project: Building a Web Server Prgramming Prject: Building a Web Server Submissin Instructin: Grup prject Submit yur cde thrugh Bb by Dec. 8, 2014 11:59 PM. Yu need t generate a simple index.html page displaying all yur grup members

More information

Procurement Contract Portal. User Guide

Procurement Contract Portal. User Guide Prcurement Cntract Prtal User Guide Cntents Intrductin...2 Access the Prtal...2 Hme Page...2 End User My Cntracts...2 Buttns, Icns, and the Actin Bar...3 Create a New Cntract Request...5 Requester Infrmatin...5

More information

It has hardware. It has application software.

It has hardware. It has application software. Q.1 What is System? Explain with an example A system is an arrangement in which all its unit assemble wrk tgether accrding t a set f rules. It can als be defined as a way f wrking, rganizing r ding ne

More information

2.1. Basic Assembler Functions:

2.1. Basic Assembler Functions: 2.1. Basic Assembler Functions: The basic assembler functions are: Translating mnemonic language code to its equivalent object code. Assigning machine addresses to symbolic labels. SOURCE PROGRAM ASSEMBLER

More information

Infrastructure Series

Infrastructure Series Infrastructure Series TechDc WebSphere Message Brker / IBM Integratin Bus Parallel Prcessing (Aggregatin) (Message Flw Develpment) February 2015 Authr(s): - IBM Message Brker - Develpment Parallel Prcessing

More information

Importing data. Import file format

Importing data. Import file format Imprting data The purpse f this guide is t walk yu thrugh all f the steps required t imprt data int CharityMaster. The system allws nly the imprtatin f demgraphic date e.g. names, addresses, phne numbers,

More information

CS4500/5500 Operating Systems Page Replacement Algorithms and Segmentation

CS4500/5500 Operating Systems Page Replacement Algorithms and Segmentation Operating Systems Page Replacement Algrithms and Segmentatin Yanyan Zhuang Department f Cmputer Science http://www.cs.uccs.edu/~yzhuang UC. Clrad Springs Ref. MOSE, OS@Austin, Clumbia, Rchester Recap f

More information

Using SPLAY Tree s for state-full packet classification

Using SPLAY Tree s for state-full packet classification Curse Prject Using SPLAY Tree s fr state-full packet classificatin 1- What is a Splay Tree? These ntes discuss the splay tree, a frm f self-adjusting search tree in which the amrtized time fr an access,

More information

ClassFlow Administrator User Guide

ClassFlow Administrator User Guide ClassFlw Administratr User Guide ClassFlw User Engagement Team April 2017 www.classflw.cm 1 Cntents Overview... 3 User Management... 3 Manual Entry via the User Management Page... 4 Creating Individual

More information

The programming for this lab is done in Java and requires the use of Java datagrams.

The programming for this lab is done in Java and requires the use of Java datagrams. Lab 2 Traffic Regulatin This lab must be cmpleted individually Purpse f this lab: In this lab yu will build (prgram) a netwrk element fr traffic regulatin, called a leaky bucket, that runs ver a real netwrk.

More information

Interfacing to MATLAB. You can download the interface developed in this tutorial. It exists as a collection of 3 MATLAB files.

Interfacing to MATLAB. You can download the interface developed in this tutorial. It exists as a collection of 3 MATLAB files. Interfacing t MATLAB Overview: Getting Started Basic Tutrial Interfacing with OCX Installatin GUI with MATLAB's GUIDE First Buttn & Image Mre ActiveX Cntrls Exting the GUI Advanced Tutrial MATLAB Cntrls

More information

Project #1 - Fraction Calculator

Project #1 - Fraction Calculator AP Cmputer Science Liberty High Schl Prject #1 - Fractin Calculatr Students will implement a basic calculatr that handles fractins. 1. Required Behavir and Grading Scheme (100 pints ttal) Criteria Pints

More information

RISKMAN REFERENCE GUIDE TO USER MANAGEMENT (Non-Network Logins)

RISKMAN REFERENCE GUIDE TO USER MANAGEMENT (Non-Network Logins) Intrductin This reference guide is aimed at managers wh will be respnsible fr managing users within RiskMan where RiskMan is nt cnfigured t use netwrk lgins. This guide is used in cnjunctin with the respective

More information

CS1150 Principles of Computer Science Methods

CS1150 Principles of Computer Science Methods CS1150 Principles f Cmputer Science Methds Yanyan Zhuang Department f Cmputer Science http://www.cs.uccs.edu/~yzhuang CS1150 UC. Clrad Springs Opening Prblem Find the sum f integers frm 1 t 10, frm 20

More information

Getting Started with the Web Designer Suite

Getting Started with the Web Designer Suite Getting Started with the Web Designer Suite The Web Designer Suite prvides yu with a slew f Dreamweaver extensins that will assist yu in the design phase f creating a website. The tls prvided in this suite

More information

Lab 4. Name: Checked: Objectives:

Lab 4. Name: Checked: Objectives: Lab 4 Name: Checked: Objectives: Learn hw t test cde snippets interactively. Learn abut the Java API Practice using Randm, Math, and String methds and assrted ther methds frm the Java API Part A. Use jgrasp

More information

Scatter Search And Bionomic Algorithms For The Aircraft Landing Problem

Scatter Search And Bionomic Algorithms For The Aircraft Landing Problem Scatter Search And Binmic Algrithms Fr The Aircraft Landing Prblem J. E. Beasley Mathematical Sciences Brunel University Uxbridge UB8 3PH United Kingdm http://peple.brunel.ac.uk/~mastjjb/jeb/jeb.html Abstract:

More information

TRAINING GUIDE. Overview of Lucity Spatial

TRAINING GUIDE. Overview of Lucity Spatial TRAINING GUIDE Overview f Lucity Spatial Overview f Lucity Spatial In this sessin, we ll cver the key cmpnents f Lucity Spatial. Table f Cntents Lucity Spatial... 2 Requirements... 2 Setup... 3 Assign

More information

Web of Science Institutional authored and cited papers

Web of Science Institutional authored and cited papers Web f Science Institutinal authred and cited papers Prcedures written by Diane Carrll Washingtn State University Libraries December, 2007, updated Nvember 2009 Annual review f paper s authred and cited

More information

Proper Document Usage and Document Distribution. TIP! How to Use the Guide. Managing the News Page

Proper Document Usage and Document Distribution. TIP! How to Use the Guide. Managing the News Page Managing the News Page TABLE OF CONTENTS: The News Page Key Infrmatin Area fr Members... 2 Newsletter Articles... 3 Adding Newsletter as Individual Articles... 3 Adding a Newsletter Created Externally...

More information

Lab 0: Compiling, Running, and Debugging

Lab 0: Compiling, Running, and Debugging UNIVERSITY OF CALIFORNIA, SANTA CRUZ BOARD OF STUDIES IN COMPUTER ENGINEERING CMPE13/L: INTRODUCTION TO PROGRAMMING IN C SPRING 2012 Lab 0: Cmpiling, Running, and Debugging Intrductin Reading This is the

More information

NORTHERN ILLINOIS UNIVERSITY

NORTHERN ILLINOIS UNIVERSITY NORTHERN ILLINOIS UNIVERSITY Simulatr f IBM Mainframe Prgramming Envirnment A Thesis Submitted t the University Hnrs Prgram In Partial Fulfillment f the Requirements f the Baccalaureate Degree With University

More information

Laboratory Exercise 3 Using the PIC18

Laboratory Exercise 3 Using the PIC18 Labratry Exercise 3 Using the PIC18 Until this pint, the user has prgrammed the FPGA Interface Bard using the FTDI and has nt been intrduced t the n bard PIC18F2550 micrcntrller. The purpse f this experiment

More information

Querying Data with Transact SQL

Querying Data with Transact SQL Querying Data with Transact SQL Curse Cde: 20761 Certificatin Exam: 70-761 Duratin: 5 Days Certificatin Track: MCSA: SQL 2016 Database Develpment Frmat: Classrm Level: 200 Abut this curse: This curse is

More information

SmartLink for Albridge Web Services

SmartLink for Albridge Web Services SmartLink fr Albridge Web Services Cpyright 2008, E-Z Data, Inc. All Rights Reserved. N part f this dcumentatin may be cpied, reprduced r translated in any frm withut the prir written cnsent f E-Z Data,

More information

1 Version Spaces. CS 478 Homework 1 SOLUTION

1 Version Spaces. CS 478 Homework 1 SOLUTION CS 478 Hmewrk SOLUTION This is a pssible slutin t the hmewrk, althugh there may be ther crrect respnses t sme f the questins. The questins are repeated in this fnt, while answers are in a mnspaced fnt.

More information

Pruning Dynamic Slices With Confidence

Pruning Dynamic Slices With Confidence Pruning Dynamic Slices With Cnfidence Xiangyu Zhang Neelam Gupta Rajiv Gupta he University f Arizna, Department f Cmputer Science, ucsn, Arizna 8572 {xyzhang,ngupta,gupta}@cs.arizna.edu Abstract Given

More information

Constituent Page Upgrade Utility for Blackbaud CRM

Constituent Page Upgrade Utility for Blackbaud CRM Cnstituent Page Upgrade Utility fr Blackbaud CRM In versin 4.0, we made several enhancements and added new features t cnstituent pages. We replaced the cnstituent summary with interactive summary tiles.

More information

CSE 3320 Operating Systems Page Replacement Algorithms and Segmentation Jia Rao

CSE 3320 Operating Systems Page Replacement Algorithms and Segmentation Jia Rao CSE 0 Operating Systems Page Replacement Algrithms and Segmentatin Jia Ra Department f Cmputer Science and Engineering http://ranger.uta.edu/~jra Recap f last Class Virtual memry Memry verlad What if the

More information

Please contact technical support if you have questions about the directory that your organization uses for user management.

Please contact technical support if you have questions about the directory that your organization uses for user management. Overview ACTIVE DATA CALENDAR LDAP/AD IMPLEMENTATION GUIDE Active Data Calendar allws fr the use f single authenticatin fr users lgging int the administrative area f the applicatin thrugh LDAP/AD. LDAP

More information

Using the Swiftpage Connect List Manager

Using the Swiftpage Connect List Manager Quick Start Guide T: Using the Swiftpage Cnnect List Manager The Swiftpage Cnnect List Manager can be used t imprt yur cntacts, mdify cntact infrmatin, create grups ut f thse cntacts, filter yur cntacts

More information

Structure Query Language (SQL)

Structure Query Language (SQL) Structure Query Language (SQL) 1. Intrductin SQL 2. Data Definitin Language (DDL) 3. Data Manipulatin Language ( DML) 4. Data Cntrl Language (DCL) 1 Structured Query Language(SQL) 6.1 Intrductin Structured

More information

Computer Organization and Architecture

Computer Organization and Architecture Campus de Gualtar 4710-057 Braga UNIVERSIDADE DO MINHO ESCOLA DE ENGENHARIA Departament de Infrmática Cmputer Organizatin and Architecture 5th Editin, 2000 by William Stallings Table f Cntents I. OVERVIEW.

More information

Assignment #5: Rootkit. ECE 650 Fall 2018

Assignment #5: Rootkit. ECE 650 Fall 2018 General Instructins Assignment #5: Rtkit ECE 650 Fall 2018 See curse site fr due date Updated 4/10/2018, changes nted in green 1. Yu will wrk individually n this assignment. 2. The cde fr this assignment

More information

ALU Design. ENG2410 Digital Design Datapath Design. Parts of CPU. Memory and I/O. Resources. Week #9 Topics. School of Engineering 1

ALU Design. ENG2410 Digital Design Datapath Design. Parts of CPU. Memory and I/O. Resources. Week #9 Topics. School of Engineering 1 ENG2410 Digital Design Datapath Design Datapath cnsists f: Parts f CPU Registers, Multiplexrs, Adders, Subtractrs and lgic t perfrm peratins n data (Cmb Lgic) Cntrl unit Generates signals t cntrl data-path

More information

Contents: Module. Objectives. Lesson 1: Lesson 2: appropriately. As benefit of good. with almost any planning. it places on the.

Contents: Module. Objectives. Lesson 1: Lesson 2: appropriately. As benefit of good. with almost any planning. it places on the. 1 f 22 26/09/2016 15:58 Mdule Cnsideratins Cntents: Lessn 1: Lessn 2: Mdule Befre yu start with almst any planning. apprpriately. As benefit f gd T appreciate architecture. it places n the understanding

More information

Custodial Integrator. Release Notes. Version 3.11 (TLM)

Custodial Integrator. Release Notes. Version 3.11 (TLM) Custdial Integratr Release Ntes Versin 3.11 (TLM) 2018 Mrningstar. All Rights Reserved. Custdial Integratr Prduct Versin: V3.11.001 Dcument Versin: 020 Dcument Issue Date: December 14, 2018 Technical Supprt:

More information

Adverse Action Letters

Adverse Action Letters Adverse Actin Letters Setup and Usage Instructins The FRS Adverse Actin Letter mdule was designed t prvide yu with a very elabrate and sphisticated slutin t help autmate and handle all f yur Adverse Actin

More information

CS4500/5500 Operating Systems Computer and Operating Systems Overview

CS4500/5500 Operating Systems Computer and Operating Systems Overview Operating Systems Cmputer and Operating Systems Overview Yanyan Zhuang Department f Cmputer Science http://www.cs.uccs.edu/~yzhuang UC. Clrad Springs Ref. MOS4E, OS@Austin, Clumbia, UWisc Overview Recap

More information

Faculty Textbook Adoption Instructions

Faculty Textbook Adoption Instructions Faculty Textbk Adptin Instructins The Bkstre has partnered with MBS Direct t prvide textbks t ur students. This partnership ffers ur students and parents mre chices while saving them mney, including ptins

More information

Lecture Handout. Database Management System. Overview of Lecture. Vertical Partitioning. Lecture No. 24

Lecture Handout. Database Management System. Overview of Lecture. Vertical Partitioning. Lecture No. 24 Lecture Handut Database Management System Lecture N. 24 Reading Material Database Systems Principles, Design and Implementatin written by Catherine Ricard, Maxwell Macmillan. Database Management Systems,

More information

Setting up the ncipher nshield HSM for use with Kerberized Certificate Authority

Setting up the ncipher nshield HSM for use with Kerberized Certificate Authority Setting up the ncipher nshield HSM fr use with Kerberized Certificate Authrity Intrductin This dcument cntains instructins fr setting up ncipher nshield hardware security mdules (HSM) fr use with the Kerberized

More information

Design Patterns. Collectional Patterns. Session objectives 11/06/2012. Introduction. Composite pattern. Iterator pattern

Design Patterns. Collectional Patterns. Session objectives 11/06/2012. Introduction. Composite pattern. Iterator pattern Design Patterns By Võ Văn Hải Faculty f Infrmatin Technlgies HUI Cllectinal Patterns Sessin bjectives Intrductin Cmpsite pattern Iteratr pattern 2 1 Intrductin Cllectinal patterns primarily: Deal with

More information

UiPath Automation. Walkthrough. Walkthrough Calculate Client Security Hash

UiPath Automation. Walkthrough. Walkthrough Calculate Client Security Hash UiPath Autmatin Walkthrugh Walkthrugh Calculate Client Security Hash Walkthrugh Calculate Client Security Hash Start with the REFramewrk template. We start ff with a simple implementatin t demnstrate the

More information

CS510 Concurrent Systems Class 2. A Lock-Free Multiprocessor OS Kernel

CS510 Concurrent Systems Class 2. A Lock-Free Multiprocessor OS Kernel CS510 Cncurrent Systems Class 2 A Lck-Free Multiprcessr OS Kernel The Synthesis kernel A research prject at Clumbia University Synthesis V.0 ( 68020 Uniprcessr (Mtrla N virtual memry 1991 - Synthesis V.1

More information

PAGE NAMING STRATEGIES

PAGE NAMING STRATEGIES PAGE NAMING STRATEGIES Naming Yur Pages in SiteCatalyst May 14, 2007 Versin 1.1 CHAPTER 1 1 Page Naming The pagename variable is used t identify each page that will be tracked n the web site. If the pagename

More information

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL The UNIVERSITY f NORTH CAROLINA at CHAPEL HILL Cmp 541 Digital Lgic and Cmputer Design Prf. Mntek Singh Spring 2019 Lab #7: A Basic Datapath; and a Sprite-Based Display Issued Fri 3/1/19; Due Mn 3/25/19

More information

MyUni Adding Content. Date: 29 May 2014 TRIM Reference: D2013/ Version: 1

MyUni Adding Content. Date: 29 May 2014 TRIM Reference: D2013/ Version: 1 Adding Cntent MyUni... 2 Cntent Areas... 2 Curse Design... 2 Sample Curse Design... 2 Build cntent by creating a flder... 3 Build cntent by creating an item... 4 Cpy r mve cntent in MyUni... 5 Manage files

More information

Machine dependent Assembler Features

Machine dependent Assembler Features Machine dependent Assembler Features Assembler Features Machine Dependent Assembler Features Instruction formats and addressing modes (SIC/XE) Program relocation Machine Independent Assembler Features

More information

Chapter 2. The OSI Model and TCP/IP Protocol Suite. PDF created with FinePrint pdffactory Pro trial version

Chapter 2. The OSI Model and TCP/IP Protocol Suite. PDF created with FinePrint pdffactory Pro trial version Chapter 2 The OSI Mdel and TCP/IP Prtcl Suite PDF created with FinePrint pdffactry Pr trial versin www.pdffactry.cm Outline THE OSI MODEL LAYERS IN THE OSI MODEL TCP/IP PROTOCOL SUITE ADDRESSING TCP/IP

More information

Implementation of Authentication Mechanism for a Virtual File System

Implementation of Authentication Mechanism for a Virtual File System Implementatin f Authenticatin Mechanism fr a Virtual File System Prject fr Operating Systems Curse (CS 5204) Implemented by- Vinth Jagannathan Abhishek Ram Under the guidance f Dr Dennis Kafura Abstract

More information

Dashboard Extension for Enterprise Architect

Dashboard Extension for Enterprise Architect Dashbard Extensin fr Enterprise Architect Dashbard Extensin fr Enterprise Architect... 1 Disclaimer... 2 Dependencies... 2 Overview... 2 Limitatins f the free versin f the extensin... 3 Example Dashbard

More information

Report Writing Guidelines Writing Support Services

Report Writing Guidelines Writing Support Services Reprt Writing Guidelines Writing Supprt Services Overview The guidelines presented here shuld give yu an idea f general cnventins fr writing frmal reprts. Hwever, yu shuld always cnsider yur particular

More information

DS-5 Release Notes. (build 472 dated 2010/04/28 08:33:48 GMT)

DS-5 Release Notes. (build 472 dated 2010/04/28 08:33:48 GMT) DS-5 Release Ntes (build 472 dated 2010/04/28 08:33:48 GMT) Intrductin This is a trial release f Keil Develpment Studi 5 (DS-5). DS-5 cntains tls fr building and debugging C/C++ and ARM assembly language

More information

Chapter 10: Information System Controls for System Reliability Part 3: Processing Integrity and Availability

Chapter 10: Information System Controls for System Reliability Part 3: Processing Integrity and Availability Chapter 10: Infrmatin System Cntrls fr System Reliability Part 3: Prcessing Integrity and Availability Cntrls Ensuring Prcessing Integrity Input Prcess Output Input Cntrls Garbage-in Garbage-ut Frm Design

More information

ROCK-POND REPORTING 2.1

ROCK-POND REPORTING 2.1 ROCK-POND REPORTING 2.1 AUTO-SCHEDULER USER GUIDE Revised n 08/19/2014 OVERVIEW The purpse f this dcument is t describe the prcess in which t fllw t setup the Rck-Pnd Reprting prduct s that users can schedule

More information

UML : MODELS, VIEWS, AND DIAGRAMS

UML : MODELS, VIEWS, AND DIAGRAMS UML : MODELS, VIEWS, AND DIAGRAMS Purpse and Target Grup f a Mdel In real life we ften bserve that the results f cumbersme, tedius, and expensive mdeling simply disappear in a stack f paper n smene's desk.

More information

Chapter 6: Lgic Based Testing LOGIC BASED TESTING: This unit gives an indepth verview f lgic based testing and its implementatin. At the end f this unit, the student will be able t: Understand the cncept

More information

Pages of the Template

Pages of the Template Instructins fr Using the Oregn Grades K-3 Engineering Design Ntebk Template Draft, 12/8/2011 These instructins are fr the Oregn Grades K-3 Engineering Design Ntebk template that can be fund n the web at

More information

Dynamic Instruction Reuse

Dynamic Instruction Reuse Dynamic Instructin Reuse Guri Shi Cmputer Sciences Department University f Wiscnsin Madisn 1 Mtivatin Prgrams cnsist f static instructins Executin sees static instructin many times - ften with same inputs

More information

Element Creator for Enterprise Architect

Element Creator for Enterprise Architect Element Creatr User Guide Element Creatr fr Enterprise Architect Element Creatr fr Enterprise Architect... 1 Disclaimer... 2 Dependencies... 2 Overview... 2 Limitatins... 3 Installatin... 4 Verifying the

More information

Using the Swiftpage Connect List Manager

Using the Swiftpage Connect List Manager Quick Start Guide T: Using the Swiftpage Cnnect List Manager The Swiftpage Cnnect List Manager can be used t imprt yur cntacts, mdify cntact infrmatin, create grups ut f thse cntacts, filter yur cntacts

More information

These tasks can now be performed by a special program called FTP clients.

These tasks can now be performed by a special program called FTP clients. FTP Cmmander FAQ: Intrductin FTP (File Transfer Prtcl) was first used in Unix systems a lng time ag t cpy and mve shared files. With the develpment f the Internet, FTP became widely used t uplad and dwnlad

More information

Arius 3.0. Release Notes and Installation Instructions. Milliman, Inc Peachtree Road, NE Suite 1900 Atlanta, GA USA

Arius 3.0. Release Notes and Installation Instructions. Milliman, Inc Peachtree Road, NE Suite 1900 Atlanta, GA USA Release Ntes and Installatin Instructins Milliman, Inc. 3424 Peachtree Rad, NE Suite 1900 Atlanta, GA 30326 USA Tel +1 800 404 2276 Fax +1 404 237 6984 actuarialsftware.cm 1. Release ntes Release 3.0 adds

More information

Stealing passwords via browser refresh

Stealing passwords via browser refresh Stealing passwrds via brwser refresh Authr: Karmendra Khli [karmendra.khli@paladin.net] Date: August 07, 2004 Versin: 1.1 The brwser s back and refresh features can be used t steal passwrds frm insecurely

More information

1 Binary Trees and Adaptive Data Compression

1 Binary Trees and Adaptive Data Compression University f Illinis at Chicag CS 202: Data Structures and Discrete Mathematics II Handut 5 Prfessr Rbert H. Slan September 18, 2002 A Little Bttle... with the wrds DRINK ME, (r Adaptive data cmpressin

More information