程序设计语言
数字系统
二进制
- 1 位 = 1b it
- 8bit = 1byte = 1字节
- 1024 bytes = 1kbytes = 1KB 1024字符
- 1024 KB = 1Million Bytes 1MB = 1兆
- 1024 MB = 1Gigabytes
- 1024 GB = 1TB
- 1024 TB = 1 PB
编程语言
与计算机进行交互的语法规则
学编程
- 初级:语法规则
- 中级:语言特性
- 高级:创造语言
编程语言分类
C
1973年,各个操作系统的开发语言
C++
C语言的加强版,1983年,贝尔实验室 Bjarne Stroustrup 在C语言的基础上推出C++
Java
完全面向对象编程语言,1995年 SUN 公司开发的跨平台语言
PHP
1994年,纯 Web 开发语言,1994 Netscape 浏览器诞生
Python
1989年,Linux 同年诞生,89你懂的,1991 苏联解体,1991正式版本
- 脚本语言,开发小人物
C#
C Sharp
Ruby
面向对象脚本语言
- Ruby on Rails: Web 框架
Perl
文字处理脚本编程动态语言
- 语法强大
JavaScript
脚本编程语言
- 全栈语言,前段-后端-服务-工具等开发
Go
并发编程语言
- 媲美C/C++
shell
脚本语言
Scalar
类似
erlang
函数式编程
黑客
- 基本上黑客新手都要学到
- disassemble(反汇编):通过一个程序运行的汇编套路来分析其源代码。
- C 语言进行测试
- 汇编要掌握到(stack,protected mode,data segmentESPEBP...),
- C语言(bit-field, stdcall...) 2.计算机原理
- WinHex/UltraEdit 或 VS 的 dempbin 分析程序
- 网络协议栈:会截取数据包,还有分析frame,结合telnet/ftp/c语言的socket等命令进行网络打劫!这部分最难最枯燥,建议看understanding TCP/IP这本书
- 系统:了解Windows内部 API,sockets 编程,IP proxy(IPv6最好也学),可以强行进行telnet,或进行 TCP hijack,或夺取远程sid等。
- Assembly language step-by-step 掌握汇编语言
- the C programming language C 语言的灵魂制作
- C++ from ground up, C++ premier C++ 在底层其实代替不了 C
- Understanding TCP/IP TCP/IP网络的精髓
编程语言流行排行榜
程序
- 程序(物理)=指令+数据
- 程序(逻辑)=算法+数据结构
过程式编程语言
- 顺序执行:依次执行
- 选择执行:仅执行其中的一个分支
- 循环执行:将整个循环体执行n次