|
下载服务器:五号服务器---VIP资料下载八区\VIP专题教程二区1 u7 ~5 `/ M& l/ B: G2 P
1 B! A, s8 m& c& F$ x% O课程持续更新中.. .已更新到第12课...
- O) d1 m, c# F# o$ a. D课程地址: http://i.youku.com/helloworld122 ! i* m. F) E5 O
6 w3 ~' u2 i1 _ I& V--献给所有初学汇编的同学们,学习汇编更能看透其他高级语言的本质。( d6 U, _. g& M6 H6 D# K
2 S& ^" z: }. S) U- f" |6 }- ]5 t) ~
/ P: b3 W5 `# F' g D/ A, N2 w; {课程内容:4 w, O2 i9 }/ b1 A1 Z7 Q$ s
01.程序运行的本质* r# S- o6 |" o& o- L" U* p
主要内容:计算机程序运行的本质,CPU三类总线的作用,内存地址空间
8 ]* G1 z7 ]% q! D3 D9 N r, @5 f, M7 a4 _$ C( h
02.寄存器(CPU工作原理)上! _! ^0 G: ~7 u3 V6 F
主要内容:通用寄存器、字型数据在寄存器中的存储
1 U6 O1 ^& R- s/ Z; D% i& K" _7 x3 _( V9 p( G' X6 U
03.寄存器(CPU工作原理)下0 o( H/ L' m4 f) i) g- `; V8 j8 w
主要内容:8086CPU给出物理地址的方法,段地址*16+偏移地址=物理地址的本质含义,8086CPU的工作过程。1 c- M; J% W* |5 R: S, L o3 _
I( B" s9 C. l! G( t8 F
04.Debug的基本功能和用法
! ^: K T$ e/ [# B- |% L; `( v4 P! S主要内容:Debug的基本功能和用法。R命令、D命令、E命令、U命令、A命令
# H: y# Q9 B s z, c. |5 a4 m+ t# r
05.访问内存数据& H( D' w" H3 G' F
主要内容:内存中字的存储,DS和[address],MOV指令,数据段) B- o- h9 {/ y; k! c$ Z2 d9 i- i
3 Y1 ^, f$ q7 \: G
06.CPU提供的栈机制
) L, E+ }% m( Z+ j+ s# E$ I" j主要内容:CPU提供的栈机制,栈顶越界问题6 C6 B5 u' @1 j. y
6 h, Y5 k4 Y/ X/ @, l1 _
07.PUSH、POP指令0 J% \+ ^3 g; Q5 [0 q) S! A" t
主要内容:PUSH指令、POP指令& y7 @4 m( s, J& c+ s
7 `% j; Z# z/ P08.一个源程序从编写到执行的过程3 Z: s" n; t6 M- R3 `" i
主要内容: 汇编源程序结构、编译、连接. Z7 g. k( W. L7 ?3 Q
8 G8 J* Y6 Y" a2 l' k09.DOS系统中EXE文件的加载过程
; H5 L3 S. H8 A5 P5 A& M主要内容:CPU控制权、程序段前缀(PSP)、DOS系统中EXE文件的加载过程
! _0 w: u" t2 H" ^/ P; U: C! } v+ z2 p8 K( u$ E) D; \* p
10.BX和LOOP指令、循环程序
- q! y8 N/ k0 _7 w& R7 e1 q+ z主要内容:LOOP指令,Debug中跟踪用LOOP指令实现的循环程序,LOOP和[BX]联合应用
7 s; g O+ Q3 j1 |- ?
, @ s' g& r7 V11.段前缀、一段安全的空间( F; v1 G& G4 ?4 x2 S
主要内容:段前缀、一段安全的空间' Z$ j$ a2 `5 u% H. M) a
2 m- S2 j6 F/ I12.向系统申请空间
4 {( o* a9 D7 G8 s主要内容:在代码段中使用数据、在代码段中使用栈$ ^* ?- c3 d: F3 g' @ x: Q. e
6 S3 F$ u* {# X5 b8 h13.包含多个段的程序; \+ {! _4 f, b0 p$ d5 Z1 F3 D
主要内容:将数据、代码、栈放入不同的段
9 q3 x; ]8 d( R5 W" Y( S
" s, n, c) t0 m14.更灵活的定位内存地址的方法(上)
; k* t/ p: @% F% H6 h; K: ^9 q2 X主要内容:and和or指令,ASCII码,大小写转换的问题2 ]1 N& f% y8 M$ k
2 t# R3 J" s6 r; b15.更灵活的定位内存地址的方法(下)
1 J! q" P8 \2 B# @, f! ^* L* m主要内容:不同寻址方式的应用、二重循环中存在的问题(栈的应用)
; B% G5 i, |/ C7 B0 g* d, [5 T4 {- k* k: |6 n* a4 `
16.数据处理的两个基本问题(上)
$ Z: D1 ^ q( q2 `" F. W主要内容:BX、SI、DI、BP,指令处理的数据会在什么地方,指令处理的数据有多长,寻址方式的综合应用
0 [6 C i3 b3 F
R T7 a! M# O7 D/ C+ s17.数据处理的两个基本问题(下)
; ]8 K& H5 Z! K6 r+ ?主要内容:伪指令DD,DUP,寻址方式在结构化数据访问中的应用" c: g; _$ v+ [
' x9 j) s; V0 p; _% S
18.转移指令的原理(上)
+ _# Z2 e5 w6 Z主要内容: offset操作符,jmp指令
% T7 ?: G j8 F6 U5 ^+ J
5 `# x! `9 J/ F8 h$ ~% W5 ^9 o+ @9 l( b19.转移指令的原理(下)5 ^5 F8 @5 O9 l5 [- |+ o0 d- Y
主要内容:JCXZ指令、根据位移进行转移的意义
/ @* E; B( [! \- @, {/ c
# |9 A9 Z# I# I4 R% L20.显示缓冲区结构原理及实例
+ Z5 C+ y& C/ L' o3 t$ Q主要内容:80*25彩色字符模式显示缓冲区结构原理
' ?" u8 x9 k. ~) C. X& g u+ j% b. J, G
, F/ |7 ]# B8 F21.CALL和RET指令
: a/ l1 n- @$ x* w6 A主要内容:CALL指令,RET和RETF指令,高级语言中函数调用原理$ r. E; E( ^9 z; J& E* ^
8 R( j" ^- U. e22.模块化程序设计- K8 o3 p! B+ L1 q9 i' c
主要内容:CALL和RET配合使用,参数和结果传递问题,批量数据传递,寄存器冲突问题' \# r' D) p$ ]6 i ~' l, l
; F! @3 q" `" p- X7 ~23.子程序实例(上)
0 U* y: Q' U5 b P主要内容:显示字符串子程序,不溢出除法子程序9 }% Y3 \4 F* }7 m: V- T4 M
9 [$ f8 F' r6 g24.子程序实例(下)$ x1 l1 O1 B& p8 X' Z7 S7 W# E
主要内容:数值显示子程序
' }. n# ]* `3 O0 S# P
$ h% |) y% _5 Y9 ~5 B( `) p7 ^25.课程设计1+ l, c0 |; P. r
主要内容:一个综合的程序(power idea 公司数据)
5 @; [4 X3 i8 {- [7 k
4 a% B& f% R) ^2 I26.标志寄存器(上)
r2 F8 Y$ f( b) D主要内容: 标志寄存器 ZF标志, PF标志, SF标志, CF标志
1 R. _* h9 r$ v; C: i' R
6 _2 f; x1 V6 S1 Y" `0 F$ T/ T27. 标志寄存器(下)
% n! q1 Q/ `; N, A+ Z: e主要内容:溢出是如何产生的,OF标志,ADC指令, SBB指令, ^8 F" q' v3 m7 c% E+ u
& e1 D& N8 U/ X! Z' d% [% k- E28. CMP指令,根据比较结果进行转移,DF标志和串传送指令3 K$ I' D- E1 F$ d6 d
主要内容:CMP指令,检测比较结果的条件转移指令,DF标志和串传送指令2 u* |7 {# ?' x/ b7 Y8 i
2 C( S" M4 n9 n% ^, _7 H. r29.PUSHF和POPF,标志寄存器在DEBUG中的表示
# h2 t( ^- d+ A主要内容:PUSHF和POPF,标志寄存器在DEBUG中的表示
" p) B/ O+ g5 R8 T- `0 W9 [
6 J" a; {) n2 U6 @9 L& N- [* J: a30.C语言中条件判断的汇编代码
( g( L% W/ K+ C+ ^& f( {0 {主要内容: C语言中条件判断的汇编代码
2 v$ |: O% o& c7 R7 D) {$ U9 S& J7 t7 H S$ ?
31.内中断(上)
- J" I2 T1 x/ k2 w/ L主要内容:内中断的产生、中断向量表、中断处理程序、中断过程、0号中断处理程序的编写! p7 @" y) A8 E% h3 `% \
( ]( r' X$ S0 V1 D32.内中断(下)9 C% `4 s0 X2 ?, \2 t
主要内容:编写处理0号中断的完整过程、单步中断、响应中断的特殊情况; `$ Z# Q& u: |( o4 T0 ~; a
6 a! m! @5 H0 I7 H" r
33.INT指令、对INT和IRET指令的深入理解
6 G0 S& t3 Y. j- ~9 ?$ T$ V主要内容:INT指令、对INT和IRET指令的深入理解
( N- f. y8 K) [# G) i
! i0 v8 \$ J9 D, V" T, b34. BIOS和DOS提供的中断例程及应用9 {/ r) f. i; w* U/ E+ `
主要内容:BIOS和DOS提供的中断例程及应用
; e) t3 S8 H+ B; ?7 @( R2 j- \
8 s+ J& ?( F0 K) r3 e35. 端口的读写、CMOS RAM芯片结构及读写方法" a. m" Y% V1 d2 H! g/ ]) k! l
主要内容:端口的读写、CMOS RAM芯片结构及读写方法、SHL和SHR指令
$ m+ c; T- b! u! K
y/ p+ l! J& u5 e/ l1 Q36.在屏幕上动态显示当前日期和时间( Z+ ^. k+ k# p; t% x! A* i$ x
主要内容:在屏幕上动态显示当前日期和时间
, K. c1 r. _) n2 Q7 a2 O$ g( W! C1 d8 g. D9 p) p
37.外中断、可屏蔽中断和不可屏蔽中断、PC机键盘的处理过程
( |' Y2 d; D! S9 P, S主要内容:外中断、可屏蔽中断和不可屏蔽中断、PC机键盘的处理过程" H$ ~7 M0 i6 Z3 b7 P; h
3 |' w. p1 V0 w! q38. 数据标号的使用、根据查表的方法编写程序的技巧
# f* T% |* I/ R* y( e主要内容:数据标号的使用、根据查表的方法编写程序的技巧
9 q0 w: w7 F# |- M7 f5 Q7 S( C. M! A K( M( `
39. 直接定址表、包含多个功能的子程序: W% d! C6 O+ _8 F) |
主要内容:直接定址表、程序入口地址的直接定址表、包含多个功能的子程序7 `6 O8 ]/ V- H5 e' Z; _! Q6 U! ~% K
5 j8 \, f7 k4 b40.BIOS 内存-键盘缓冲区,使用BIOS进行键盘输入4 B+ t6 x& U1 M+ h' m9 L' ]; s* m
主要内容:包含多个功能子程序的中断例程,BIOS内存-键盘缓冲区,使用BIOS进行键盘输入" E7 t6 x# N9 {6 Q7 n
# h+ W9 }# w- m41. 字符串的输入、应用INT 13H中断对磁盘进行读写- {1 S& }9 D" `6 A- P% J9 }
主要内容:字符串的输入、应用INT 13H中断对磁盘进行读写
( U6 U: { T* u. u: c4 _" o" g8 _8 k0 D8 k
42.一个开机自运行程序实例
( N! p7 x) t2 I! F5 K主要内容:一个开机自运行程序实例' O! U+ a7 D- M& S2 Y6 m; l( ]; a
' T: r5 }1 u9 u
|
|