Assembly Language x86 Processors Slice 1

0.0(0)
Studied by 0 people
call kaiCall Kai
Locked
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/119

encourage image

There's no tags or description

Looks like no tags are added yet.

Last updated 2:49 AM on 8/26/26
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai
Chat

No analytics yet

Send a link to your students to track their progress

120 Terms

1
New cards

ASCII Control Code 00h

NUL (Null character)

2
New cards

ASCII Control Code 01h

Ctrl-A, SOH (Start of header)

3
New cards

ASCII Control Code 02h

Ctrl-B, STX (Start of text)

4
New cards

ASCII Control Code 03h

Ctrl-C, ETX (End of text)

5
New cards

ASCII Control Code 04h

Ctrl-D, EOT (End of transmission)

6
New cards

ASCII Control Code 05h

Ctrl-E, ENQ (Enquiry)

7
New cards

ASCII Control Code 06h

Ctrl-F, ACK (Acknowledge)

8
New cards

ASCII Control Code 07h

Ctrl-G, BEL (Bell)

9
New cards

ASCII Control Code 08h

Ctrl-H, BS (Backspace)

10
New cards

ASCII Control Code 09h

Ctrl-I, HT (Horizontal tab)

11
New cards

ASCII Control Code 0Ah

Ctrl-J, LF (Line feed)

12
New cards

ASCII Control Code 0Bh

Ctrl-K, VT (Vertical tab)

13
New cards

ASCII Control Code 0Ch

Ctrl-L, FF (Form feed)

14
New cards

ASCII Control Code 0Dh

Ctrl-M, CR (Carriage return)

15
New cards

ASCII Control Code 0Eh

Ctrl-N, SO (Shift out)

16
New cards

ASCII Control Code 0Fh

Ctrl-O, SI (Shift in)

17
New cards

ASCII Control Code 10h

Ctrl-P, DLE (Data link escape)

18
New cards

ALT-Key Scan Code for Key 1

78h

19
New cards

ALT-Key Scan Code for Key 2

79h

20
New cards

ALT-Key Scan Code for Key A

1Eh

21
New cards

ALT-Key Scan Code for Key B

30h

22
New cards

ALT-Key Scan Code for Key C

2Eh

23
New cards

Keyboard Function Key F1 Normal Scan Code

3B

24
New cards

Keyboard Function Key F2 Normal Scan Code

3C

25
New cards

Keyboard Function Key F3 Normal Scan Code

3D

26
New cards

Keyboard Function Key F4 Normal Scan Code

3E

27
New cards

Keyboard Function Key F5 Normal Scan Code

3F

28
New cards

Keyboard Function Key F6 Normal Scan Code

40

29
New cards

Keyboard Function Key F7 Normal Scan Code

41

30
New cards

Keyboard Function Key F8 Normal Scan Code

42

31
New cards

Virtual machine concept

An architectural topic covered in the book that leads naturally into operating systems and compiler writing.

32
New cards

Instruction set architecture

A foundational topic included in the text for subsequent computer architecture courses.

33
New cards

Elementary Boolean operations

Topic leading into computer architecture and operating systems, dealing with logical states.

34
New cards

Instruction execution cycle

A core computer architecture topic involving how instructions are fetched and executed.

35
New cards

Memory access and handshaking

Topics that lead naturally into computer architecture and operating systems.

36
New cards

Interrupts and polling

Hardware and system communication topics covered to bridge software and physical devices.

37
New cards

Hardware-based I/O

A topic relating to how programs interact directly with input and output hardware.

38
New cards

Floating-point binary representation

A numerical topic covered to explain how non-integer real numbers are represented in binary.

39
New cards

Protected memory and paging

Topics relating specifically to x86 and Intel64 architecture memory management.

40
New cards

Memory segmentation in real-address mode

An x86 and Intel64 architecture feature used in legacy or real-address mode execution.

41
New cards

16-Bit interrupt handling

An architectural mechanism relating specifically to x86 and Intel64 systems.

42
New cards

MS-DOS and BIOS system calls

System calls implemented via interrupts for low-level machine interaction.

43
New cards

Floating-point unit architecture

The hardware architecture and programming model for x86 numeric coprocessors.

44
New cards

Instruction encoding

The study of how assembly instructions are translated into raw machine byte sequences.

45
New cards

Irvine64 library

A 64-bit version of the author's subroutine library created for early chapter examples.

46
New cards

Short answer questions

Review questions moved to the ends of chapters in the seventh edition.

47
New cards

Algorithm workbench exercises

End-of-chapter exercises requiring students to write a short amount of code to accomplish a goal.

48
New cards

Printed chapters focus

Protected mode programming in 32-bit and 64-bit under recent versions of Microsoft Windows.

49
New cards

Online electronic chapters

Four chapters covering 16-bit programming, BIOS, MS-DOS services, and graphics supplied online.

50
New cards

Irvine16.lib

The 16-bit version of the subroutine library running in real-address mode for Chapters 14 through 17.

51
New cards

Testing environment

Microsoft Macro Assembler Version 11.0 running in Microsoft Visual Studio 2012.

52
New cards

Debugger's role

Described as a programmer's best friend for catching errors and learning about the CPU and OS.

53
New cards

High-level language portability

The property where source programs compile and run on a wide variety of computer systems.

54
New cards

MASM

Microsoft Macro Assembler, an industrial-strength assembler included with Microsoft Visual Studio.

55
New cards

Assembler utility

A utility program that converts source code programs from assembly language into machine language.

56
New cards

Linker utility

A utility program that combines individual files created by an assembler into a single executable program.

57
New cards

Debugger utility

A utility that lets you step through a running program and examine registers and memory.

58
New cards

Assembly language relationship

Has a one-to-one relationship with machine language where each instruction corresponds to a single machine instruction.

59
New cards

High-level language relationship

Languages like C++ and Java have a one-to-many relationship with assembly and machine language.

60
New cards

Assembly language portability

Assembly language is not portable because it is designed for a specific processor family.

61
New cards

Embedded Programs

Short programs stored in small memory in single-purpose devices like phones and appliances.

62
New cards

Real-time Applications

Applications dealing with simulation and hardware monitoring requiring precise timing.

63
New cards

Game Consoles Optimization

Software optimized for small code size and fast execution using direct hardware access.

64
New cards

Hardware and OS Interaction

Assembly language helps gain an overall understanding of computer architecture and operating systems.

65
New cards

Low-level Bit Manipulation

High-level languages sometimes abstract data representation, requiring assembly subroutines.

66
New cards

Device Drivers

Programs translating general OS commands into specific hardware references, often containing assembly.

67
New cards

Assembly Language Rules

Most rules are based on physical limitations of the target processor and its machine language.

68
New cards

Assembly vs High-Level Restrictions

Assembly has fewer syntax rules and can access any memory address directly.

69
New cards

Assembly Programming Price

The freedom of low-level access comes at the cost of spending a lot of time debugging.

70
New cards

Virtual Machine Concept

A software program or model that emulates the functions of another physical or virtual computer.

71
New cards

Interpretation

Executing L1 programs by decoding and executing each instruction at runtime using an L0 program.

72
New cards

Translation

Converting an entire L1 program into an L0 program before executing it directly on hardware.

73
New cards

Level 1 Virtual Machine

Represents the computer's digital logic hardware.

74
New cards

Instruction Set Architecture (ISA)

Level 2 of the virtual machine, also referred to as machine language.

75
New cards

Assembly Language Level

Appears at Level 3 of the virtual machine, using short mnemonics like ADD and MOV.

76
New cards

High-Level Languages Level

Appears at Level 4, translating powerful statements into multiple assembly instructions.

77
New cards

Numbering Base

The maximum number of symbols that can be assigned to a single digit in a numbering system.

78
New cards

Most Significant Bit (MSB)

The bit on the far left of a binary number.

79
New cards

Least Significant Bit (LSB)

The bit on the far right of a binary number, representing 2^0.

80
New cards

Signed vs Unsigned Integer

A signed integer can be positive or negative, while an unsigned integer is default positive.

81
New cards

Translating Decimal to Binary

Repeatedly divide the unsigned decimal integer by 2, saving each remainder as a binary digit.

82
New cards

Binary Addition Carry

When adding 1 to 1 in binary, the result is 10, generating a carry to the next-highest bit position.

83
New cards

Basic Storage Unit in x86

A byte, containing 8 bits.

84
New cards

Doubleword Size

A storage size equal to 4 bytes or 32 bits.

85
New cards

Quadword Size

A storage size equal to 8 bytes or 64 bits.

86
New cards

One Megabyte Size

Equal to 2^20 or 1,048,576 bytes.

87
New cards

Hexadecimal Digit Representation

Each hexadecimal digit represents four binary bits, with A through F representing decimal 10 through 15.

88
New cards

Signed Binary MSB Sign Rule

For x86 processors, a sign bit of 0 indicates positive and 1 indicates negative.

89
New cards

Two's-Complement Representation

Formed by inverting the bits of a binary integer and adding 1, serving as its additive inverse.

90
New cards

Converting Hexadecimal Two's Complement

Reverse all bits by subtracting each digit from 15, then add 1 to the result.

91
New cards

Signed Decimal to Binary Conversion Steps

1. Convert absolute value to binary. 2. If negative, create the two's complement of the binary result.

92
New cards

Signed Decimal to Hexadecimal Steps

1. Convert absolute value to hexadecimal. 2. If negative, take the two's complement of the hexadecimal value.

93
New cards

Signed Hexadecimal to Decimal Steps

1. If negative, take its two's complement; otherwise retain as-is. 2. Convert to decimal and attach a minus sign if originally negative.

94
New cards

Determining Hexadecimal Sign

Inspect the most significant digit. If digit ≥ 8, it is negative; if digit ≤ 7, it is positive.

95
New cards

Signed Byte Storage Size

8 bits, with a value range from -2^7 to +2^7 - 1.

96
New cards

Signed Word Storage Size

16 bits, with a value range from -2^15 to +2^15 - 1.

97
New cards

Signed Doubleword Storage Size

32 bits, with a value range from -2^31 to +2^31 - 1.

98
New cards

Signed Quadword Storage Size

64 bits, with a value range from -2^63 to +2^63 - 1.

99
New cards

Signed Double Quadword Storage Size

128 bits, with a value range from -2^127 to +2^127 - 1.

100
New cards

Alternative Binary Subtraction Method

Reverse the sign of the subtracted value (negate by inverting bits and adding 1) and then add the two values.