欢迎来到麦多课文档分享! | 帮助中心 海量文档,免费浏览,给你所需,享你所想!
麦多课文档分享
全部分类
  • 标准规范>
  • 教学课件>
  • 考试资料>
  • 办公文档>
  • 学术论文>
  • 行业资料>
  • 易语言源码>
  • ImageVerifierCode 换一换
    首页 麦多课文档分享 > 资源分类 > PPT文档下载
    分享到微信 分享到微博 分享到QQ空间

    Assembly Language for Intel-Based Computers, 5th Edition.ppt

    • 资源ID:378629       资源大小:432.50KB        全文页数:57页
    • 资源格式: PPT        下载积分:2000积分
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    二维码
    微信扫一扫登录
    下载资源需要2000积分(如需开发票,请勿充值!)
    邮箱/手机:
    温馨提示:
    如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如需开发票,请勿充值!如填写123,账号就是123,密码也是123。
    支付方式: 支付宝扫码支付    微信扫码支付   
    验证码:   换一换

    加入VIP,交流精品资源
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    Assembly Language for Intel-Based Computers, 5th Edition.ppt

    1、Assembly Language for Intel-Based Computers, 5th Edition,Chapter 14: Disk Fundamentals,(c) Pearson Education, 2006-2007. All rights reserved. You may modify and copy this slide show for your personal use, or for use in the classroom, as long as this copyright statement, the authors name, and the tit

    2、le are not changed.,Slide show prepared by the author Revision date: June 4, 2006,Kip R. Irvine,Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,2,Chapter Overview,Disk Storage Systems File Systems Disk Directory Reading and Writing Disk Sectors (7305h) System-Level File Functio

    3、ns,Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,3,Disk Storage Systems,Tracks, Cylinders, and Sectors Disk Partitions (Volumes),Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,4,Tracks and Sectors,Physical disk geometry - a way of describing the disks s

    4、tructure to make it readable by the system BIOS Track - concentric circle containing data Sector - part of a track,Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,5,Cylinders and Seeking,Cylinder - all tracks readable from one head position Seek - move read/write heads between

    5、tracks,Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,6,Disk Formatting,Physical formatting aka low-level formatting Usually done at the factory. Must be done before logical formatting Defines the tracks, sectors, and cylinders Logical formatting Permits disk to be accessed us

    6、ing sequentially numbered logical sectors Installs a file system (ex: NTFS) May install an operating system,Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,7,Fragmentation,A fragmented file is one whose sectors are no longer located in contiguous areas of the disk. causes read/

    7、write heads to skip slower file access possible read/write errors,Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,8,Translation,Translation - conversion of physical disk geometry to a sequence of logical sector numbers Performed by a hard disk controller (firmware) Logical sect

    8、or numbers are numbered sequentially, have no direct mapping to hardware,Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,9,Disk Partitions,Logical units that divide a physical hard disk Also called volumes,Primary partition Up to four permitted Each may boot a different OS,Exte

    9、nded partition Maximum of one permitted May be divided into multiple logical partitions, each with a different drive letter,Primary and Extended Up to three primary and one extended,Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,10,Logical Partitions,Created from an extended p

    10、artition No limit on the number Each has a separate drive letter Usually contain data Can be bootable (ex: Linux),Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,11,Disk Partition Table,Located in the disks Master Boot Record (MBR), following a block of executable code Four ent

    11、ries, one for each possible partition Each entry contains the following fields: state (non-active, bootable) type of partition (BigDOS, Extended, . . .) beginning head, cylinder, & sector numbers ending head, cylinder, & sector numbers offset of partition from MBR number of sectors in the partition,

    12、See also: Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,12,Cascading Partition Tables,Boot, BigDOS,NA, Extended,NA, BigDOS,NA, BigDOS,Drive D,Drive E,Primary partition,links to,Boot = bootable (system) NA = non active BigDOS = over 32 MB,Logical partitions (D, E),Drive C,Irvine, Kip

    13、 R. Assembly Language for Intel-Based Computers 5/e, 2007.,13,Dual-Boot Example,System 98 and Win2000-A are bootable partitions One is called the system partition when active,DATA_1 and BACKUP are logical partitions Their data can be shared by both operating systems,Irvine, Kip R. Assembly Language

    14、for Intel-Based Computers 5/e, 2007.,14,Master Boot Record (MBR),The MBR contains the following elements: Disk partititon table A program that jumps to the boot sector of the system partition,Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,15,Whats Next,Disk Storage Systems Fil

    15、e Systems Disk Directory Reading and Writing Disk Sectors (7305h) System-Level File Functions,Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,16,File Systems,Directory, File, Cluster Relationships Clusters FAT12 FAT16 FAT32 NTFS Primary Disk Areas,Irvine, Kip R. Assembly Langua

    16、ge for Intel-Based Computers 5/e, 2007.,17,File System,This is what it does for you: Keeps track of allocated and free space Maintains directories and filenames Tracks the sector location of each file and directory,Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,18,Directory, F

    17、ile, Cluster, Sector Relationships,Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,19,Cluster (1 of 2),Smallest unit of space used by a file Consists of one or more adjacent sectors Size depends on both the type of file system in use and the disk partition size A file is a link

    18、ed sequence of clusters. Example:,Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,20,Cluster (2 of 2),A file always uses at least one cluster A high percentage of space may be wasted Example: 8,200-byte file requires three 4K clusters:,Irvine, Kip R. Assembly Language for Intel

    19、-Based Computers 5/e, 2007.,21,FAT12,Designed for diskettes Each FAT entry is 12 bits Very little fault tolerance two copies of the FAT (cluster table) Optimal storage for small files 512-byte clusters,Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,22,FAT16,MS-DOS format for h

    20、ard disks 16-bit FAT entries Large cluster size when disk 1 GB inneficient for small files Max 2 GB size under MS-DOS Little or no recovery from read/write errors,Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,23,FAT32,Supports long filenames Supported by all version of MS-Win

    21、dows from Windows 95 onward (except Windows NT) 32-bit FAT entries 32 GB maximum volume size Improved recovery from read/write errors,Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,24,NTFS,Supported by Windows NT, 2000, and XP Handles large volumes can span multiple hard drive

    22、s Efficient cluster size (4K) on large volumes Unicode filenames Permissions on files & folders Share folders across network Built-in compression and encryption Track changes in a change journal Disk quotas for individuals or groups Robust error recovery Disk mirroring,Irvine, Kip R. Assembly Langua

    23、ge for Intel-Based Computers 5/e, 2007.,25,Primary Disk Areas,A disk or volume is divided into predefined areas and assigned specific logical sectors. Example: 1.44 MB diskette Boot record (sector 0) File allocation table (sectors 1 18) Root directory (sectors 19 32) Data area (sectors 33 2,879),Irv

    24、ine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,26,Your turn . . .,1. A 1.44 MB diskette has 512 bytes per cluster. Suppose a certain file begins in cluster number 5. Which logical disk sector contains the beginning of the file? (Hint: see page 503).,2. Suppose a certain hard driv

    25、e has 4 KB per cluster, and we know that the data area begins in sector 100. If a particular file begins in cluster 10, which logical sectors are used by the cluster?,(answers on next panel . . .),Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,27,Answers,1. The data area begin

    26、s in Sector 33 (see page 503). Each cluster = 1 sector, so the file begins in sector 33 + 5 = sector 38.,2. The hard drive has 8 sectors per cluster. The starting cluster number of the file is 100 + (8 * 10) = 180. Therefore, sectors 180 187 are used by the files first cluster.,Irvine, Kip R. Assemb

    27、ly Language for Intel-Based Computers 5/e, 2007.,28,Boot Record (1 of 2),Fields in a typical MS-DOS boot record: Jump to boot code (JMP instruction) Manufacturer name, version number Bytes per sector Sectors per cluster Number of reserved sectors (preceding FAT #1) Number of copies of FAT Maximum nu

    28、mber of root directory entries Number of disk sectors for drives under 32 MB Media descriptor byte Size of FAT, in sectors Sectors per track,Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,29,Boot Record (2 of 2),(continued) Number of drive heads Number of hidden sectors Number

    29、 of disk sectors for drives over 32 MB Drive number (modified by MS-DOS) Reserved Extended boot signature (always 29h) Volume ID number (binary) Volume label File-system type (ASCII) Start of boot program and data,Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,30,Whats Next,Di

    30、sk Storage Systems File Systems Disk Directory Reading and Writing Disk Sectors (7305h) System-Level File Functions,Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,31,Keeping Track of Files,MS-DOS Directory Structure Long Filenames in MS-Windows File Allocation Table,Irvine, Ki

    31、p R. Assembly Language for Intel-Based Computers 5/e, 2007.,32,MS-DOS Directory Structure (1 of 2),Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,33,MS-DOS Directory Structure (2 of 2),Time field equals 4DBDh (9:45:58), and the Date field equals 247Ah (March 26, 1998). Attribu

    32、te is normal:,Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,34,Date and Time Fields,Date stamp field:Time stamp field:,Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,35,Your turn . . .,What time value is represented here?,Irvine, Kip R. Assembly Languag

    33、e for Intel-Based Computers 5/e, 2007.,36,File Attribute Values,What type of file has attribute 00100111 . . . ?,Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,37,Long Filenames in MS-Windows,Filename: ABCDEFGHIJKLMNOPQRSTUV.TXT,Irvine, Kip R. Assembly Language for Intel-Based

    34、 Computers 5/e, 2007.,38,File Allocation Table (1 of 2),A map of all clusters on the disk, showing their ownership by specific files Each entry corresponds to a cluster number Each cluster contains one or more sectors Each file is represented in the FAT as a linked list, called a cluster chain. Thre

    35、e types of FATs, named after the length of each FAT entry: FAT-12 FAT-16 FAT-32,Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,39,File Allocation Table (2 of 2),Each entry contains an n-bit integer that identifies the next entry. (n=12,16, or 32) Two cluster chains are shown i

    36、n the following diagram, one for File1, and another for File2:,Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,40,Whats Next,Disk Storage Systems File Systems Disk Directory Reading and Writing Disk Sectors (7305h) System-Level File Functions,Irvine, Kip R. Assembly Language fo

    37、r Intel-Based Computers 5/e, 2007.,41,Reading and Writing Disk Sectors (7305h),INT 21h, Function 7305h (absolute disk read and write) Reads and writes logical disk sectors Runs only in 16-bit Real-address mode Does not work under Windows NT, 2000, or XP Tight security!,Irvine, Kip R. Assembly Langua

    38、ge for Intel-Based Computers 5/e, 2007.,42,DISKIO Structure,Used by Function 7305h:,DISKIO STRUCTstartSector DWORD 0 ; starting sector numbernumSectors WORD 1 ; number of sectorsbufferOfs WORD buffer ; buffer offsetbufferSeg WORD DATA ; buffer segment DISKIO ENDS,Irvine, Kip R. Assembly Language for

    39、 Intel-Based Computers 5/e, 2007.,43,Example,.data buffer BYTE 512 DUP(?) diskStruct DISKIO .codemov ax,7305h ; absolute Read/Writemov cx,0FFFFh ; always this valuemov dl,3 ; drive Cmov bx,OFFSET diskStruct mov si,0 ; read sectorint 21h,Example: Read one or more sectors from drive C:,Irvine, Kip R.

    40、Assembly Language for Intel-Based Computers 5/e, 2007.,44,Sector Display Program,Pseudocode: Ask for starting sector number and drive number do while (keystroke ESC)Display headingRead one sectorIf MS-DOS error then exitDisplay one sectorWait for keystrokeIncrement sector number end do,View the sour

    41、ce code,Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,45,Whats Next,Disk Storage Systems File Systems Disk Directory Reading and Writing Disk Sectors (7305h) System-Level File Functions,Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,46,System-Level File

    42、 Functions,Common Disk-Related Functions Get Disk Free Space Create Subdirectory Remove Subdirecrory Set Current Directory Get Current Directory,Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,47,Common Disk-Related Functions,Irvine, Kip R. Assembly Language for Intel-Based Com

    43、puters 5/e, 2007.,48,ExtGetDskFreSpcStruc Structure (1 of 2),StructSize: A return value that represents the size of the ExtGetDskFreSpcStruc structure, in bytes. Level: Always 0. SectorsPerCluster: The number of sectors inside each cluster. BytesPerSector: The number of bytes in each sector. Availab

    44、leClusters: The number of available clusters. TotalClusters: The total number of clusters in the volume.,Structure data returned by Fucntion 7303h:,Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,49,ExtGetDskFreSpcStruc (2 of 2),AvailablePhysSectors: The number of physical sect

    45、ors available in the volume, without adjustment for compression. TotalPhysSectors: The total number of physical sectors in the volume, without adjustment for compression. AvailableAllocationUnits: The number of available allocation units in the volume, without adjustment for compression. TotalAlloca

    46、tionUnits: The total number of allocation units in the volume, without adjustment for compression. Rsvd: Reserved member.,Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,50,Function 7303h Get Disk Free Space,AX = 7303h ES:DI points to a ExtGetDskFreSpcStruc CX = size of the Ext

    47、GetDskFreSpcStruc variable DS:DX points to a null-terminated string containing the drive name,View the DiskSpc.asm program,Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,51,Create Subdirectory,.data pathname BYTE “ASM“,0.codemov ah,39h ; create subdirectorymov dx,OFFSET pathna

    48、meint 21hjc DisplayError. DisplayError:,Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,52,Remove Subdirecrory,.data pathname BYTE C:ASM,0.code mov ah,3Ah ; remove subdirectorymov dx,OFFSET pathnameint 21hjc DisplayError. DisplayError:,Irvine, Kip R. Assembly Language for Intel

    49、-Based Computers 5/e, 2007.,53,Set Current Directory,.data pathname BYTE “C:ASMPROGS“,0.codemov ah,3Bh ; set current directorymov dx,OFFSET pathnameint 21hjc DisplayError. DisplayError:,Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,54,Get Current Directory,.data pathname BYTE 64 dup(0) ; path stored here by MS-DOS.codemov ah,47h ; get current directory pathmov dl,0 ; on default drivemov si,OFFSET pathname int 21hjc DisplayError. DisplayError:,Irvine, Kip R. Assembly Language for Intel-Based Computers 5/e, 2007.,


    注意事项

    本文(Assembly Language for Intel-Based Computers, 5th Edition.ppt)为本站会员(amazingpat195)主动上传,麦多课文档分享仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文档分享(点击联系客服),我们立即给予删除!




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
    备案/许可证编号:苏ICP备17064731号-1 

    收起
    展开