Presentation is loading. Please wait.

Presentation is loading. Please wait.

Web siteWeb site ExamplesExamples 1 Mode of Operation Protected mode  4 GB  32-bit address  Windows, Linux Real-address mode  1 MB space  20-bit address.

Similar presentations


Presentation on theme: "Web siteWeb site ExamplesExamples 1 Mode of Operation Protected mode  4 GB  32-bit address  Windows, Linux Real-address mode  1 MB space  20-bit address."— Presentation transcript:

1 Web siteWeb site ExamplesExamples 1 Mode of Operation Protected mode  4 GB  32-bit address  Windows, Linux Real-address mode  1 MB space  20-bit address  MS-DOS

2 Web siteWeb site ExamplesExamples 2 Real-Address mode 1 MB RAM maximum addressable Application programs can access any area of memory Single tasking Supported by MS-DOS operating system

3 Web siteWeb site ExamplesExamples 3 Segmented Memory Segmented memory addressing: absolute (linear) address is a combination of a 16-bit segment value added to a 16-bit offset

4 Web siteWeb site ExamplesExamples 4 Calculating Linear Addresses Given a segment address, multiply it by 16 (add a hexadecimal zero), and add it to the offset Example: convert 08F1:0100 to a linear address Adjusted Segment value: 0 8 F 1 0 Add the offset: 0 1 0 0 Linear address: 0 9 0 1 0

5 Web siteWeb site ExamplesExamples 5 Protected Mode 4 GB addressable RAM  (00000000 to FFFFFFFFh) Each program assigned a memory partition which is protected from other programs Designed for multitasking Supported by Linux & MS-Windows

6 Web siteWeb site ExamplesExamples 6 Flat Model All segments are mapped to the entire 32-bit physical address space of the compter.. Each segment is defined by a segment descriptor, a 64-bit value stored in a table known as the global descriptor table (GDT).

7 Web siteWeb site ExamplesExamples 7 Multi-Segment Model Each program has a local descriptor table (LDT)  holds descriptor for each segment used by the program

8 32-Bit Windows Programming

9 Web siteWeb site ExamplesExamples 9 Standard Console Handles STD_INPUT_HANDLE  standard input STD_OUTPUT_HANDLE  standard output STD_ERROR_HANDLE  standard error output A handle is an unsigned 32-bit integer. The following MS-Windows constants are predefined:

10 Web siteWeb site ExamplesExamples 10 GetStdHandle GetStdHandle returns a handle to a console stream Specify the type of handle (see previous slide) The handle is returned in EAX Prototype: GetStdHandle PROTO, nStdHandle:DWORD; handle type

11 Web siteWeb site ExamplesExamples 11 ReadConsole The ReadConsole function provides a convenient way to read text input and put it in a buffer. Prototype: ReadConsole PROTO, handle:DWORD,; input handle pBuffer:PTR BYTE,; pointer to buffer maxBytes:DWORD,; number of chars to read pBytesRead:PTR DWORD,; ptr to num bytes read notUsed:DWORD; (not used)

12 Web siteWeb site ExamplesExamples 12 ReadConsole Example

13 Web siteWeb site ExamplesExamples 13 ReadConsole Example

14 Web siteWeb site ExamplesExamples 14 ReadConsole Example

15 Web siteWeb site ExamplesExamples 15 ReadConsole Example

16 Web siteWeb site ExamplesExamples 16 WriteConsole The WriteConsole function writes a string to the screen, using the console output handle. Prototype: WriteConsole PROTO, handle:DWORD,; output handle pBuffer:PTR BYTE,; pointer to buffer bufsize:DWORD,; size of buffer pCount:PTR DWORD,; output count lpReserved:DWORD; (not used)

17 Web siteWeb site ExamplesExamples 17 WriteConsole Example

18 Web siteWeb site ExamplesExamples 18 WriteConsole Example

19 Web siteWeb site ExamplesExamples 19 WriteConsole Example

20 Web siteWeb site ExamplesExamples 20 CreateFile CreateFile either creates a new file or opens an existing file. If successful, it returns a handle to the open file; otherwise, it returns a special constant named INVALID_HANDLE_VALUE. Prototype: CreateFile PROTO, pFilename:PTR BYTE,; ptr to filename desiredAccess:DWORD,; access mode shareMode:DWORD,; share mode lpSecurity:DWORD, ; ptr to security attribs creationDisposition:DWORD,; file creation options flagsAndAttributes:DWORD,; file attributes htemplate:DWORD; handle to template file

21 Web siteWeb site ExamplesExamples 21 CreateFile Example INVOKE CreateFile, ADDR filename, ; ptr to filename GENERIC_READ,; access mode DO_NOT_SHARE,; share mode NULL,; ptr to security attributes OPEN_EXISTING,; file creation options FILE_ATTRIBUTE_NORMAL,; file attributes 0; handle to template file Opens an existing file for reading:

22 Web siteWeb site ExamplesExamples 22 CreateFile Example INVOKE CreateFile, ADDR filename, GENERIC_WRITE,; access mode DO_NOT_SHARE, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0 Opens an existing file for writing:

23 Web siteWeb site ExamplesExamples 23 CreateFile Example INVOKE CreateFile, ADDR filename, GENERIC_WRITE, DO_NOT_SHARE, NULL, CREATE_ALWAYS,; overwrite existing file FILE_ATTRIBUTE_NORMAL, 0 Creates a new file with normal attributes, erasing any existing file by the same name:

24 Web siteWeb site ExamplesExamples 24 ReadFile ReadFile reads text from an input file Prototype: ReadFile PROTO, handle:DWORD,; handle to file pBuffer:PTR BYTE,; ptr to buffer nBufsize:DWORD,; num bytes to read pBytesRead:PTR DWORD,; bytes actually read pOverlapped:PTR DWORD; ptr to asynch info

25 Web siteWeb site ExamplesExamples 25 ReadFile Example

26 Web siteWeb site ExamplesExamples 26 ReadFile Example

27 Web siteWeb site ExamplesExamples 27 ReadFile Example

28 Web siteWeb site ExamplesExamples 28 WriteFile WriteFile writes data to a file, using an output handle. The handle can be the screen buffer handle, or it can be one assigned to a text file. Prototype: WriteFile PROTO, fileHandle:DWORD,; output handle pBuffer:PTR BYTE,; pointer to buffer nBufsize:DWORD,; size of buffer pBytesWritten:PTR DWORD,; num bytes written pOverlapped:PTR DWORD; ptr to asynch info

29 Web siteWeb site ExamplesExamples 29 WriteFile Example

30 Web siteWeb site ExamplesExamples 30 WriteFile Example

31 Web siteWeb site ExamplesExamples 31 WriteFile Example

32 16-Bit MS-DOS Programming

33 Web siteWeb site ExamplesExamples 33 Interrupt Do something else, and get interrupted when I/O events happen. May be triggered by hardware or software.

34 Web siteWeb site ExamplesExamples 34 INT I/O Example

35 Web siteWeb site ExamplesExamples 35 INT I/O Example

36 Web siteWeb site ExamplesExamples 36 Interrupt Vector Processing

37 Web siteWeb site ExamplesExamples 37 Interrupt Vector Processing

38 Web siteWeb site ExamplesExamples 38 Common Interrupts INT 10h Video Services INT 16h Keyboard Services INT 17h Printer Services INT 1Ah Time of Day INT 1Ch User Timer Interrupt INT 21h MS-DOS Services


Download ppt "Web siteWeb site ExamplesExamples 1 Mode of Operation Protected mode  4 GB  32-bit address  Windows, Linux Real-address mode  1 MB space  20-bit address."

Similar presentations


Ads by Google