作者簡介
Patrick Juola 科羅拉多大學計算機科學博士,現為迪尤肯大學數學與計算機科學系副教授。他的研究興趣包括自然語言處理、語言心理學及計算機安全。他曾在牛津大學做博士後,在卡內基-梅隆大學的CERT/CC做訪問科學家,在PGP公司做專職科學家。
目錄
出版者的話
譯者序
前言
第一部分 假想計算機
第1章 計算和表示
1.1 計算
1.1.1 電子設備
1.1.2 算法機
1.1.3 功能部件
1.2 數字和數值表示
1.2.1 數字表示和位
1.2.2 布爾邏輯
1.2.3 位元組和字
1.2.4 表示
1.3 虛擬機
1.3.1 什麼是虛擬機
1.3.2 可移植性問題
1.3.3 超越限制
1.3.4 易於升級
1.3.5 安全問題
1.3.6 劣勢
1.4 JVM編程
1.4.1 Java:JVM不是什麼
1.4.2 樣例程式的轉換
1.4.3 高級語言和低級語言
1.4.4 JVM所看到的樣例程式
1.5 本章回顧
1.6 習題
1.7 編程習題
第2章 算術表達式
2.1 符號表示
2.1.1 指令集
2.1.2 操作、運算元及順序
2.1.3 基於堆疊的計算器
2.2 存儲程式計算機
2.2.1 取指一執行周期
2.2.2 CISC計算機與RIsC計算機
2.3 JVM上的算術運算
2.3.1 一般評述
2.3.2 一個算術指令集示例
2.3.3 堆疊操作
2.3.4 彙編語言和機器碼
2.3.5 非法操作
2.4 一個樣例程式
2.4.1 一個有註解的例子
2.4.2 最終的JVM代碼
2.5 JVM計算指令總結
2.6 本章回顧
2.7 習題
2.8 編程習題
第3章 用jasmin進行彙編語言編程
3.1 Java編程系統
3.2 使用彙編器
3.2.1 彙編器
3.2.2 運行一個程式
3.2.3 顯示到控制台還是顯示到視窗
3.2.4 使用Systemout和Systemin
3.3 彙編語言語句類型
3.3.1 指令和注釋
3.3.2 彙編指令
3.3.3 資源彙編指令
3.4 例子:隨機數生成
3.4.1 生成偽隨機數
3.4.2 在JVM上實現
3.4.3 另一種實現
3.4.4 與Java類互動
3.5 本章回顧
3.6 習題
3.7 編程習題
第4章 控制結構
4.1 他們教給你的都是錯誤的
4.1.1 再談取指一執行
4.1.2 轉移指令和標號
……
第二部分 真實計算機