02 Memory Organization

background image

University  of  Washington  

Sec3on  1:  Memory,  Data,  and  Addressing  

¢

Preliminaries  

¢

Represen3ng  informa3on  as  bits  and  bytes  

¢

Organizing  and  addressing  data  in  memory  

¢

Manipula3ng  data  in  memory  using  C  

¢

Boolean  algebra  and  bit-­‐level  manipula3ons  

Memory  Organiza3on  

background image

University  of  Washington  

Encoding  Byte  Values  

¢

Binary  

 00000000

2

 -­‐-­‐    11111111

2  

§

Byte  =  8  bits  (binary  digits)  

§

Example:  00101011

2

 =  32+8+2+1  =  43

10

 

§

Example:  26

10

 =  16+8+2  =  00101010

2

 

¢

Decimal

                             0

10  

-­‐-­‐    255

10  

¢

Hexadecimal                                00

16

 -­‐-­‐    FF

16  

§

Groups  of  4  binary  digits  

§

Byte  =  2  hexadecimal  (hex)  or  base  16  digits  

§

Base-­‐16  number  representaFon  

§

Use  characters  ‘0’  to  ‘9’  and  ‘A’  to  ‘F’  to  represent  

§

Write  FA1D37B

16

 in  C    code  as  a  4-­‐byte  value:  

0xFA1D37B      or      0xfa1d37b

 

0   0   0000  

1   1   0001  

2   2   0010  

3   3   0011  

4   4   0100  

5   5   0101  

6   6   0110  

7   7   0111  

8   8   1000  

9   9   1001  

A   10   1010  

B   11   1011  

C   12   1100  

D   13   1101  

E   14   1110  

F   15   1111  

Memory  Organiza3on  

background image

University  of  Washington  

How  is  memory  organized?  

¢

How  do  we  find  data  in  memory?  

Memory  Organiza3on  

background image

University  of  Washington  

Byte-­‐Oriented  Memory  Organiza3on  

¢

Programs  refer  to  addresses  

§

Conceptually,  a  very  large  array  of  bytes,  each  with  an  

address

 (index)  

§

OperaFng  system  provides  an  address  space  private  to  each  “process”  

§ 

Process  =  program  being  executed  +  its  data  +  its  “state”  

§ 

Program  can  modify  its  own  data,  but  not  that  of  others  

§ 

Clobbering  code  or  “state”  o\en  leads  to  crashes  (or  security  holes)  

¢

Compiler  +  run-­‐3me  system  control  memory  alloca3on  

§

Where  different  program  objects  should  be  stored  

§

All  allocaFon  within  a  single  address  space  

• • •!

Memory  Organiza3on  

background image

University  of  Washington  

Machine  Words  

¢

Machine  has  a  “word  size”  

§

Nominal  size  of  integer-­‐valued  data  

§ 

Including  addresses  

§

UnFl  recently,  most  machines  used  32-­‐bit  (4-­‐byte)  words  

§ 

Limits  addresses  to  4GB  

§ 

Became  too  small  for  memory-­‐intensive  applicaFons  

§

Most  current  x86  systems  use  64-­‐bit  (8-­‐byte)  words  

§ 

PotenFal  address  space:  2

64

 ≈  1.8  X  10

19

 bytes  (18  EB  –  exabytes)  

§

For  backward-­‐compaFbility,  many  CPUs  support  different  word  sizes  

§ 

Always  a  power-­‐of-­‐2  in  the  number  of  bytes:  1,  2,  4,  8,  …  

Memory  Organiza3on  

background image

University  of  Washington  

Word-­‐Oriented  Memory  Organiza3on  

¢

Addresses  specify    

loca3ons  of  bytes  in  memory  

§

Address  of  first  byte  in  word  

§

Addresses  of  successive  words    

differ  by  4  (32-­‐bit)  or  8  (64-­‐bit)  

§

Address  of  word  0,  1,  ..  10?  

 

0000  

0001  

0002  

0003  

0004  

0005  

0006  

0007  

0008  

0009  

0010  

0011  

32-­‐bit  

Words  

Bytes   Addr.  

0012  

0013  

0014  

0015  

64-­‐bit  

Words  

Addr    

=  

??  

Addr    

=  

??  

Addr    

=  

??  

Addr    

=  

??  

Addr    

=  

??  

Addr    

=  

??  

Memory  Organiza3on  

background image

University  of  Washington  

Word-­‐Oriented  Memory  Organiza3on  

¢

Addresses  specify    

loca3ons  of  bytes  in  memory  

§

Address  of  first  byte  in  word  

§

Addresses  of  successive  words    

differ  by  4  (32-­‐bit)  or  8  (64-­‐bit)  

§

Address  of  word  0,  1,  ..  10?  

 

0000  

0001  

0002  

0003  

0004  

0005  

0006  

0007  

0008  

0009  

0010  

0011  

32-­‐bit  

Words  

Bytes   Addr.  

0012  

0013  

0014  

0015  

64-­‐bit  

Words  

Addr    

=  

??  

Addr    

=  

??  

Addr    

=  

??  

Addr    

=  

??  

Addr    

=  

??  

Addr    

=  

??  

0000  

0004  

0008  

0012  

0000  

0008  

Memory  Organiza3on  


Wyszukiwarka

Podobne podstrony:
Ćw 1 23.02.2009 - organizacyjne, studia, Neurologia
wyklad 02 reakcja organizmu
Organizacja i zarzadzanie 02, Politologia, Organizacja i zarządzanie
egzamin 02.02.2009, organiczna, ch.org kolo
Cw 02 Materia organiczna
02. Strategia organizacji zaj1 fol, Zarzadzanie Projektami
02 Planowanie, organizowanie i Nieznany (2)
02 Struktura organizacyjnaid 38 Nieznany (2)
02 MEMORY CHANNEL E
02 Swiatowa Organizacja Zdrowia
02 Planowanie, organizowanie i finansowanie działalności
02 Metody syntezy organicznej VI s1id 3675
BOTANIKA WYK+üAD 02, Organizmy zarodnikowe i rośliny nasienne
chirstmas misc memory cards 02
Zachowania organizacyjne (1) 02 2010

więcej podobnych podstron