Thư viện Trường Đại học Phú Xuân

Thư viện số

Giáo trình, tài liệu tham khảo và tài nguyên học tập mở.

Introduction To MIPS Assembly Language Programming

Nguồn ngoài

Introduction To MIPS Assembly Language Programming

Charles W. Kann III · Gettysburg College

This book was written to introduce students to assembly language programming in MIPS. As with all assembly language programming texts, it covers basic operators and instructions, subprogram calling, loading and storing memory, program control, and the conversion of the assembly language program into machine code.

CC BYComputer ScienceEngineering 0 lượt xem
Data Structure and Algorithms

Nguồn ngoài

Data Structure and Algorithms

Harrison Njoroge · African Virtual University

Có trong mục lục: 03: Basic Data Structures and Abstract Data Types

CC BY-SAComputer ScienceEngineering 0 lượt xem
High Performance Computing

Nguồn ngoài

High Performance Computing

Chuck Severance · University of Michigan

The purpose of this book is to teach new programmers and scientists about the basics of High Performance Computing. Too many parallel and high performance computing books focus on the architecture, theory and computer science surrounding HPC. This book speaks to the practicing chemistry student, physicist, or biologist who need to write and run their programs as part of their research.

CC BYComputer ScienceEngineering 0 lượt xem
Data Analysis in the Psychological Sciences: A Practical, Applied, Multimedia Approach

Nguồn ngoài

Data Analysis in the Psychological Sciences: A Practical, Applied, Multimedia Approach

Leyre Castro; J. Toby Mordkoff · University of Iowa Libraries · 2023

This open resources textbook contains 10 Units that describe and explain the main concepts in statistical analysis of psychological data. In addition to conceptual descriptions and explanations of the basic analyses for descriptive statistics, this textbook also explains how to conduct those analyses with common statistical software (Excel) and open-source free software (R).

CC BY-NC-SAMathematicsStatistics 0 lượt xem
Scientific Computing for Chemists with Python

Nguồn ngoài

Scientific Computing for Chemists with Python

Charles Weiss · Charles J. Weiss · 2025

This book serves as an introduction to coding for chemists. The tools employed in this book are the powerful and popular combination of Jupyter notebooks and the Python programming language. No background beyond first-year college chemistry and occasionally some very basic spectroscopy (for advanced chapters) is assumed for most of this book. This book starts with a brief primer on Jupyter notebooks in chapter 0 and computer programming with Python in chapters 1 and 2. If you already have a background in these tools, feel free to skip ahead. The rest of the book dives into applications of Python to solving chemical problems. Python and Jupyter were chosen for a variety of reasons, including that they are: Relatively easy to use and learn Powerful and well-suited for solving chemical problems Free, open-source software Cross-platform (e.g., runs on Windows, macOS, and Linux) Supplemented with numerous, specialized libraries for handling specific types of data or problems (e.g., machine learning) Supported by a helpful and welcoming community Learning to use a number of popular Python scientific libraries to solve chemical problems is one of the themes of this book. A Python library can be thought of as a tool pack with premade functions for performing common tasks in scientific data processing, analysis, and visualization. For example, the matplotlib library provides a variety of functions for creating a wide range of plots, while the scikit-learn library contains functions and resources for machine learning.

CC BY-NC-SAChemistryComputer Science 0 lượt xem
Introduction to Computer Programming with Python

Nguồn ngoài

Introduction to Computer Programming with Python

Harris Wang · Athabasca University Press · 2023

This introduction to computer programming with Python begins with some of the basics of computing and programming before diving into the fundamental elements and building blocks of computer programs in Python language. From the installation of Python, Python interactive programming, and integrated development environments to raising and handling exceptions, using compound data types to solve problems, and implement divide-and-conquer processes using functions, classes and modules, this textbook will set students up for success in programming and computing study and practice. The included exercises and projects are designed to hone students’ skills.

CC BY-NC-SAComputer ScienceProgramming Languages 0 lượt xem
Programming with Java

Nguồn ngoài

Programming with Java

Ashik Bhuiyan; Md Amiruzzaman · The Pennsylvania Alliance for Design of Open Textbooks (PA-ADOPT) · 2025

Programming with Java is a beginner-friendly eTextbook that introduces readers to the fundamentals of Java, one of the most widely used programming languages. It covers key concepts like syntax, data types, control structures, and object-oriented programming, offering clear explanations and practical examples. The chapters build progressively, making the material accessible even to those with little or no programming background. The book also explores important topics such as exception handling, file I/O, and basic data structures, providing a strong foundation for further computer science studies. With interactive exercises and end-of-chapter projects, readers can apply their knowledge through real-world applications. This eTextbook equips students with the skills they need to confidently take on advanced programming challenges and pursue successful careers in software development.

CC BY-NCComputer ScienceEngineering & Technology 0 lượt xem
Introduction to Data Science Using Python

Nguồn ngoài

Introduction to Data Science Using Python

Afrand Agah · The Pennsylvania Alliance for Design of Open Textbooks (PA-ADOPT) · 2024

This book contains two parts, the first is designed to be used in an introductory programming course for students looking to learn Python, without having any prior experience with programming. Basic programming concepts are discussed, explained, and illustrated with a Python program. Ample programming questions are provided for practice. The second part of the book utilizes machine-learning concepts and statistics to accomplish data-driven resolutions. Python programs are provided to apply scientific computing to conclude statistically driven results.

CC BY-NCComputer Science 0 lượt xem
Prealgebra via Python Programming: First Steps to Perform Large Scale Computational Tasks in the Sciences and Engineerings

Nguồn ngoài

Prealgebra via Python Programming: First Steps to Perform Large Scale Computational Tasks in the Sciences and Engineerings

Sergio Rojas · Sergio Rojas · 2018

This book was written for students and instructors who want to learn how to use a computer for other than the most common uses, such as web browsing, document creation, or paying bills online. This book is for anyone who wants to perform computational tasks that they design. In other words, if you wish to learn how to program a computer, this book is for you. Because prealgebra is a subject that practically everyone is supposed to learn in grade school, it provides a platform to introduce basic computer programming concepts. Consequently, this book should also be of interest to students in middle or high school who want to learn how to program, and who are willing to invest the time and effort in learning a programming language that they could continue using throughout their schooling and in their professional life. Similarly, this book could also be of interest to pre-service and in-service mathematics teachers wishing to have at their disposal a complementary tool to assist in fostering understanding, competency, and interest in mathematics among their students. This book can be integrated with the teachers’ curriculum as way to tackle non-traditional math problems using an inexpensive modern computer language. By the end of the book, a reader will have learned enough to be able to write a preliminary, step-by-step one variable equation solver that can be expanded in the future to use with more complex equations. In other words, by the end of the book, you will be able to write code that programs their machines to solve equations. This code is foundational and readers are ecouraged to learn on their own how to build on it to suit their mathematics learning needs.

CC BY-NCComputer ScienceProgramming Languages 0 lượt xem
Earth, Space, and Environmental Science Explorations with ArcGIS Pro

Nguồn ngoài

Earth, Space, and Environmental Science Explorations with ArcGIS Pro

Wing Cheung · Wing Cheung

When I first started teaching Geographic Information Systems (GIS) over 15 years ago, there were only a handful of GIS tutorial books on the market. While a few of them focused on a particular theme, many of them were mainly technical publications with no unifying theme. These publications are perfect for teaching new users about basic GIS operations and continue to be invaluable to many users today. However, these publications consisted of tutorials focusing on vastly different real-world scenarios, and felt a little disjointed to integrate into a class that focuses on a specific field (e.g. Environmental Science, Geography, Urban Planning). Since then, I am happy to see that there has been a proliferation of publications that are not only focused on introducing the technology, but also provide an introduction to a specific field as well as GIS. It is with this consideration in mind that I wrote this book to not only introduce students to the tools in ArcGIS Pro, but also to provide a glimpse into some of the topics that may be covered in an introductory course in Geography, Environmental Science, or related disciplines. I aimed to achieve a balance of technical instruction and information about Earth, Space, and Environmental Sciences, to make this publication helpful for new GIS learners, as well as students who may be interested in learning about the applications of GIS in the Earth, Space, and Environmental Sciences. Before you begin with the book, please download and unzip the data for the book at https://tinyurl.com/ESESGIS. Each chapter will begin with a list of the technical objectives for the lab exercise, which is particularly useful to refer to should you need a refresher on how to perform a particular task at a later date. The list of technical objectives is followed by a short introduction that provides the context for the exercise. Subsequently, you will find the step-by-step directions for the exercises with questions embedded throughout (in yellow h

CC BYComputer ScienceEarth Sciences 0 lượt xem
Mathematical Modeling and Simulation with MATLAB

Nguồn ngoài

Mathematical Modeling and Simulation with MATLAB

Sheldon Lee; Megan Buzby · University of Alaska Southeast · 2021

This textbook attempts to provide you with an overview of the commonly used basic mathematical models, as well as a wide range of applications. It offers a perspective that brings you back to the modeling process and the assumptions that go into it.

CC BY-SAComputer ScienceProgramming Languages 0 lượt xem
Introduction to Statistical Thinking

Nguồn ngoài

Introduction to Statistical Thinking

Benjamin Yakir · Benjamin Yakir · 2010

The target audience for this book is college students who are required to learn statistics, students with little background in mathematics and often no motivation to learn more. It is assumed that the students do have basic skills in using computers and have access to one. Moreover, it is assumed that the students are willing to actively follow the discussion in the text, to practice, and more importantly, to think. Teaching statistics is a challenge. Teaching it to students who are required to learn the subject as part of their curriculum, is an art mastered by few. In the past I have tried to master this art and failed. In desperation, I wrote this book. This book uses the basic structure of generic introduction to statistics course. However, in some ways I have chosen to diverge from the traditional approach. One divergence is the introduction of R as part of the learning process. Many have used statistical packages or spreadsheets as tools for teaching statistics. Others have used R in advanced courses. I am not aware of attempts to use R in introductory level courses. Indeed, mastering R requires much investment of time and energy that may be distracting and counterproductive for learning more fundamental issues. Yet, I believe that if one restricts the application of R to a limited number of commands, the benefits that R provides outweigh the difficulties that R engenders. Another departure from the standard approach is the treatment of probability as part of the course. In this book I do not attempt to teach probability as a subject matter, but only specific elements of it which I feel are essential for understanding statistics. Hence, Kolmogorov’s Axioms are out as well as attempts to prove basic theorems and a Balls and Urns type of discussion. On the other hand, emphasis is given to the notion of a random variable and, in that context, the sample space.

CC BYComputer ScienceApplied 0 lượt xem
A Primer for Computational Biology

Nguồn ngoài

A Primer for Computational Biology

Shawn O'Neil · Oregon State University · 2017

A Primer for Computational Biology aims to provide life scientists and students the skills necessary for research in a data-rich world. The text covers accessing and using remote servers via the command-line, writing programs and pipelines for data analysis, and provides useful vocabulary for interdisciplinary work. The book is broken into three parts: Introduction to Unix/Linux: The command-line is the “natural environment” of scientific computing, and this part covers a wide range of topics, including logging in, working with files and directories, installing programs and writing scripts, and the powerful “pipe” operator for file and data manipulation. Programming in Python: Python is both a premier language for learning and a common choice in scientific software development. This part covers the basic concepts in programming (data types, if-statements and loops, functions) via examples of DNA-sequence analysis. This part also covers more complex subjects in software development such as objects and classes, modules, and APIs. Programming in R: The R language specializes in statistical data analysis, and is also quite useful for visualizing large datasets. This third part covers the basics of R as a programming language (data types, if-statements, functions, loops and when to use them) as well as techniques for large-scale, multi-test analyses. Other topics include S3 classes and data visualization with ggplot2.

CC BY-NC-SABiologyComputer Science 0 lượt xem
MIPS Assembly Language Programming using QtSpim

Nguồn ngoài

MIPS Assembly Language Programming using QtSpim

Ed Jorgensen · Ed Jorgensen · 2017

There are a number of excellent, comprehensive, and in-depth texts on MIPS assembly language programming. This is not one of them.The purpose of this text is to provide a simple and free reference for university level programming and architecture units that include a brief section covering MIPS assembly language programming. The text assumes usage of the QtSpim simulator. An appendix is included that covers the download, installation, and basic use of the QtSpim simulator.The scope of this text addresses basic MIPS assembly language programming including instruction set usage, stacks, procedure/function calls, QtSpim simulator system services, multiple dimension arrays, and basic recursion.

CC BY-NC-SAComputer ScienceProgramming Languages 0 lượt xem
Agent-Based Evolutionary Game Dynamics

Nguồn ngoài

Agent-Based Evolutionary Game Dynamics

Luis Izquierdo; Segismundo Izquierdo; William Sandholm · University of Wisconsin - Madison · 2024

This book is a guide to implement and analyze simple agent-based evolutionary models using NetLogo. All the models we implement are agent-based, i.e. individual agents and their interactions are explicitly represented in the models. To formalise agents’ interactions we use the basic framework of Evolutionary Game Theory. NetLogo is a multi-agent programmable modeling environment used by hundreds of thousands of students, teachers and researchers all around the globe. No coding experience is necessary to fully understand the contents of this book.

CC BYComputer Science 0 lượt xem
The Unicode cookbook for linguists: Managing writing systems using orthography profiles

Nguồn ngoài

The Unicode cookbook for linguists: Managing writing systems using orthography profiles

Steven Moran; Michael Cysouw · Language Science Press · 2018

This text is a practical guide for linguists, and programmers, who work with data in multilingual computational environments. We introduce the basic concepts needed to understand how writing systems and character encodings function, and how they work together at the intersection between the Unicode Standard and the International Phonetic Alphabet. Although these standards are often met with frustration by users, they nevertheless provide language researchers and programmers with a consistent computational architecture needed to process, publish and analyze lexical data from the world's languages. Thus we bring to light common, but not always transparent, pitfalls which researchers face when working with Unicode and IPA. Having identified and overcome these pitfalls involved in making writing systems and character encodings syntactically and semantically interoperable (to the extent that they can be), we created a suite of open-source Python and R tools to work with languages using orthography profiles that describe author- or document-specific orthographic conventions. In this cookbook we describe a formal specification of orthography profiles and provide recipes using open source tools to show how users can segment text, analyze it, identify errors, and to transform it into different written forms for comparative linguistics research.

CC BYComputer ScienceLinguistics 0 lượt xem
Think Data Structures: Algorithms and Information Retrieval in Java

Nguồn ngoài

Think Data Structures: Algorithms and Information Retrieval in Java

Allen Downey · Green Tea Press · 2016

Data structures and algorithms are among the most important inventions of the last 50 years, and they are fundamental tools software engineers need to know. But in my opinion, most of the books on these topics are too theoretical, too big, and too bottom-up: Too theoretical: Mathematical analysis of algorithms is based on simplifying assumptions that limit its usefulness in practice. Many presentations of this topic gloss over the simplifications and focus on the math. In this book I present the most practical subset of this material and eliminate the rest. Too big: Most books on these topics are at least 500 pages, and some are more than 1000. By focusing on the topics I think are most useful for software engineers, I kept this book under 250 pages. Too bottom-up: Many data structures books focus on how data structures work (the implementations), with less about how to use them (the interfaces). In this book, I go “top down”, starting with the interfaces. Readers learn to use the structures in the Java Collections Framework before getting into the details of how they work. Finally, many present this material out of context and without motivation: it’s just one damn data structure after another! I try to alleviate the boredom by organizing the topics around an application—web search—that uses data structures extensively, and is an interesting and important topic in its own right. This application also motivates some topics that are not usually covered in an introductory data structures class, including persistent data structures, with Redis, and streaming algorithms. This book also presents basic aspects of software engineering practice, including version control and unit testing. Each chapter ends with an exercise that allows readers to apply what they have learned. Each exercise includes automated tests that check the solution. And for most exercises, I present my solution at the beginning of the next chapter. This book is intended for college students in computer

CC BY-NC-SAComputer Science 0 lượt xem
Implementing a One Address CPU in Logisim

Nguồn ngoài

Implementing a One Address CPU in Logisim

Charles Kann · A.T. Still University · 2016

Most computer users have an incorrect, but useful, cognitive metaphor for computers in which the user says (or types or clicks) something and a mystical, almost intelligent or magical, behavior happens. It is not a stretch to describe computer users as believing computers follow the laws of magic, where some magic incantation is entered, and the computer responds with an expected, but magical, behavior. This magic computer does not actually exist. In reality computer are machines, and every action a computer performs reduces to a set of mechanical operations. In fact the first complete definition of a working computer was a mechanical machine designed by Charles Babbage in 1834, and would have run on steam power. Probably the biggest success of Computer Science (CS) in the 20th century was the development of abstractions that hide the mechanical nature of computers. The fact that average people use computers without ever considering that they are mechanistic is a triumph of CS designers. This purpose of this monograph is to break the abstract understanding of a computer, and to explain a computer's behavior in completely in mechanistic terms. It will deal specifically with the Central Processing Unit (CPU) of the computer, as this is where the magic happens. All other parts of a computer can be seen as just providing information for the CPU to operate on. This monograph will deal with a specific type of CPU, a one-address CPU, and will explain this CPU using only standard gates, specifically AND, OR, NOT, NAND and XOR gates, and 4 basic Integrated Circuits (ICs), the Decoder, Multiplexer, Adder, and Flip Flop. All of these gates and components can be described as mechanical transformations of input data to output data, and the overall CPU can then be seen as a mechanical device.

CC BYComputer Science 0 lượt xem
High Performance Computing

Nguồn ngoài

High Performance Computing

Charles Severance; Kevin Dowd · OpenStax CNX · 2010

The purpose of this book is to teach new programmers and scientists about the basics of High Performance Computing. Too many parallel and high performance computing books focus on the architecture, theory and computer science surrounding HPC. This book speaks to the practicing chemistry student, physicist, or biologist who need to write and run their programs as part of their research.

CC BYComputer Science 0 lượt xem
The Spec UI framework

Nguồn ngoài

The Spec UI framework

Johan Fabry; Stephane Ducasse · Square Bracket Associates · 2017

Spec is the default UI framework for Pharo. To build UI's in Spec existing widgets or even complete UI's are reused and configured to form a new UI. This book first shows the basics of Spec and how it enables reuse of UIs. It then treats UI layout in detail before moving on to explaining the management of windows. Some of the more advanced widgets are also discussed as well as the dynamic features of Spec. Lastly, the book also contains a chapter with tips and tricks.

CC BY-SAComputer Science 0 lượt xem