Showing posts with label computer science. Show all posts
Showing posts with label computer science. Show all posts

Thursday, September 20, 2018

augmented reality(AR)


  • Virtual Fixtures – first A.R. system, 1992, U.S. Air Force, WPAFB

Augmented Reality (AR) is an interactive experience of a real-world environment whereby the objects that reside in the real-world are "augmented" by computer-generated perceptual information, sometimes across multiple sensory modalities, including visual, auditory, haptic, somatosensory, and olfactory
https://en.wikipedia.org/wiki/Augmented_reality



  • A Simple Explanation of Augmented Reality (AR)

The origin of the word augmented is augment, which means to add or enhance something. In the case of Augmented Reality (also called AR), graphics, sounds, and touch feedback are added into our natural world to create an enhanced user experience.

Augmented Reality vs Virtual Reality
Unlike virtual reality, which requires you to inhabit an entirely virtual environment, augmented reality uses your existing natural environment and simply overlays virtual information on top of it. As both virtual and real worlds harmoniously coexist, users of augmented reality experience a new and improved natural world where virtual information is used as a tool to provide assistance in everyday activities.

https://www.realitytechnologies.com/augmented-reality/

Friday, April 8, 2016

BCD to gray code conversion


  • BCD to gray code conversion

Binary coded decimal (BCD) requires a minimum of 4 bits to represent all possible digits from 0 to 9. There are ten possible configurations for a BCD with the following corresponding Gray codes, which also require a minimum of 4 bits:
https://www.answers.com/Q/How_do_you_convert_bcd_into_Gray_code

Wednesday, August 5, 2015

Magma

  • Magma
Magma is a large, well-supported software package designed for computations in algebra, number theory, algebraic geometry and algebraic combinatorics
http://magma.maths.usyd.edu.au/magma/

Thursday, July 10, 2014

literal

  • In computer science, a literal is a notation for representing a fixed value in source code.
In contrast to literals, variables or constants are symbols that can take on one of a class of fixed values, the constant being constrained not to change.
Literals are often used to initialize variables, for example, in the following, 1 is an integer literal and the three letter string in "cat" is a string literal:
 int a = 1;
 String s = "cat";

 http://en.wikipedia.org/wiki/Literal_%28computer_programming%29

Tuesday, January 28, 2014

One’s complement representation


  • One’s complement representation

In one's complement, positive numbers are represented as usual in regular binary.
To negate a number, replace all zeros with ones, and ones with zeros - flip the bits.
12 would be 00001100, and -12 would be 11110011
As in signed magnitude, the leftmost bit indicates the sign (1 is negative, 0 is positive).
To compute the value of a negative number, flip the bits and translate as before.

http://www.math.grin.edu/~rebelsky/Courses/152/97F/Readings/student-binary#sign


  • 11012 = 1310 (a 4-bit unsigned number)
0 1101 = +1310 (a positive number in 5-bit one’s complement)
1 0010 = -1310 (a negative number in 5-bit one’s complement)

01002 = 410 (a 4-bit unsigned number)
0 0100 = +410 (a positive number in 5-bit one’s complement)
1 1011 = -410 (a negative number in 5-bit one’s complement)

http://webcache.googleusercontent.com/search?q=cache:OC8tJ0Dj968J:https://wiki.engr.illinois.edu/download/attachments/183861726/10-Subtractions-sol.ppt%3Fversion%3D1%26modificationDate%3D1317908161000+&cd=1&hl=tr&ct=clnk&gl=tr&client=firefox-a

Wednesday, January 8, 2014

Go (programming language)

 Go, also called golang, is a programming language initially developed at Google in 2007 by Robert Griesemer, Rob Pike, and Ken Thompson.
 It is a statically-typed language with syntax loosely derived from that of C, adding automatic memory management, type safety,
 some dynamic-typing capabilities, additional built-in types such as variable-length arrays and key-value maps,
 and a large standard library.
 http://en.wikipedia.org/wiki/Go_%28programming_language%29

  • Features of Go Programming
The most important features of Go programming are listed below −
    Support for environment adopting patterns similar to dynamic languages. For example, type inference (x := 0 is valid declaration of a variable x of type int)
    Compilation time is fast.
    Inbuilt concurrency support: lightweight processes (via go routines), channels, select statement.
    Go programs are simple, concise, and safe.
    Support for Interfaces and Type embedding.
    Production of statically linked native binaries without external dependencies.
Features Excluded Intentionally
    Support for type inheritance
    Support for method or operator overloading
    Support for circular dependencies among packages
    Support for pointer arithmetic
    Support for assertions
    Support for generic programming
    You can use "vi", "vim" or any other text editor to write your Go program into a file
https://www.tutorialspoint.com/go/go_overview.htm

  • Local Environment Setup
    A text editor
    Go compiler
https://www.tutorialspoint.com/go/go_environment.htm

  • A Go program consists of various tokens.
In a Go program, the line separator key is a statement terminator.
A Go identifier is a name used to identify a variable, function, or any other user-defined item
Go does not allow punctuation characters such as @, $, and % within identifiers. Go is a case-sensitive programming language
Whitespaces separate one part of a statement from another and enables the compiler to identify where one element in a statement, such as int, ends and the next element begins
https://www.tutorialspoint.com/go/go_basic_syntax.htm

  • On most of the operating systems, programs are not permitted to access memory at address 0 because that memory is reserved by the operating system. However, the memory address 0 has special significance; it signals that the pointer is not intended to point to an accessible memory location. But by convention, if a pointer contains the nil (zero) value, it is assumed to point to nothing.
https://www.tutorialspoint.com/go/go_pointers.htm   

  • Go Slice is an abstraction over Go Array. Go Array allows you to define variables that can hold several data items of the same kind but it does not provide any inbuilt method to increase its size dynamically or get a sub-array of its own. Slices overcome this limitation
If a slice is declared with no inputs, then by default, it is initialized as nil. Its length and capacity are zero.
https://www.tutorialspoint.com/go/go_slice.htm

  • Recursion is the process of repeating items in a self-similar way. The same concept applies in programming languages as well. If a program allows to call a function inside the same function, then it is called a recursive function call.
https://www.tutorialspoint.com/go/go_recursion.htm

  • Type casting is a way to convert a variable from one data type to another data type. For example, if you want to store a long value into a simple integer then you can type cast long to int. You can convert values from one type to another using the cast operator
https://www.tutorialspoint.com/go/go_type_casting.htm

  • Go programming provides another data type called interfaces which represents a set of method signatures. The struct data type implements these interfaces to have method definitions for the method signature of the interfaces.
https://www.tutorialspoint.com/go/go_interfaces.htm

Monday, April 15, 2013

How does Assembly Code run on a microprocessor?


every program that is run on a computer is being executed inside the processor
The microprocessor or Central Processing Unit (CPU) is the heart of the computer
it is the piece of hardware that carries out the tasks or instructions sent to it by the user or operating system

 A program is a set of instructions that are written in a higher-level language, like C/C++ and Java, and translated to a lower-level language by the compiler to assembly and then object or machine code, 1’s and 0’s
 assembler and compiler maps the human readable instructions to machine code, in order to be read by the computer.

 the only language the computer hardware, including the processor, understands is Machine Language

 To code in machine language directly would be problematic and very confusing, so programmers invented a lower-level language called assembly language. Assembly language is just machine language translated to a human readable format that is standardized.

 Just like English there are many different types of assembly languages and each one is specific to the processor it is running on

 The simplest and widely used assembly language is MIPS.
 The MIPS architecture uses only three formats to organize its 128 different types of instructions.
 In a 32-bit architecture each instruction is 32 bits wide and the first six bits (opcode) represent the instruction the processor needs to execute.


 There are three stages in the cycle of the programs execution: Fetch, Decode, and Execute

 The first stage, Fetch, fetches the current instruction from the memory and stores it into the PC or program counter.
 In the decode stage, the instruction is decoded so the processor knows what to do
 The last stage, execute, executes the current decoded instruction.

 This cycle then repeats after PC is incremented by 4, to load the next instruction.
 Once all instructions are done executing the program is done executing.

 http://www.personal.psu.edu/scb5156/assignment5.html

Wednesday, March 27, 2013

Data vs. Information



  • Data vs. Information


Data:
raw facts
no context
just numbers and text

Information:
data with context
processed data
value-added to data
summarized
organized
analyzed
http://www.google.com.tr/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&cad=rja&ved=0CDgQFjAB&url=http%3A%2F%2Fwww.cs.siena.edu%2F~ebreimer%2Fcourses%2Fcsis-114-s08%2Flectures%2FData%2520vs.%2520Information%2520(4).ppt&ei=qGZTUYbxCYjIswaYv4GgBg&usg=AFQjCNG67c6gZwgrpj3FEVUYSbNru5jdKQ&bvm=bv.44342787,d.Yms




  • Data:


Meaning
Data is raw, unorganized facts that need to be processed. Data can be something simple and seemingly random and useless until it is organized.
Example
Each student's test score is one piece of data

Information:

Meaning
When data is processed, organized, structured or presented in a given context so as to make it useful, it is called Information.
Example
The class' average score or the school's average score is the information that can be concluded from the given data

http://www.diffen.com/difference/Data_vs_Information

Wednesday, March 13, 2013

Moore's law


Moore's law
Moore's law is the observation that over the history of computing hardware, the number of transistors on integrated circuits doubles approximately every two years.

The law is named after Intel co-founder Gordon E. Moore, who described the trend in his 1965 paper.
The paper noted that the number of components in integrated circuits had doubled every year from the invention of the integrated circuit in 1958 until 1965 and predicted that the trend would continue "for at least ten years".
His prediction has proven to be uncannily accurate, in part because the law is now used in the semiconductor industry to guide long-term planning and to set targets for research and development.
http://en.wikipedia.org/wiki/Moore's_law

Thursday, February 21, 2013

Situation awareness



  • Situation awareness
    Situational awareness is the perception of environmental elements with respect to time and/or space, the comprehension of their meaning, and the projection of their status after some variable has changed, such as time, or some other variable, such as a predetermined event. It is also a field of study concerned with perception of the environment critical to decision-makers in complex, dynamic areas from aviation, air traffic control, power plant operations, military command and control, and emergency services such as fire fighting and policing; to more ordinary but nevertheless complex tasks such as driving an automobile or bicycle.
    Situational awareness (SA) involves being aware of what is happening in the vicinity, in order to understand how information, events, and one's own actions will impact goals and objectives, both immediately and in the near future
    http://en.wikipedia.org/wiki/Situation_awareness


  • LuciadMap

LuciadMap software comprises an extensive suite of customizable components that meet the demands for rapid development of high-end situational awareness applications in all areas of C4ISR and ATC/ATM and is designed to provide high-performance and high-precision applications.
http://www.luciad.com/products/luciadmap



Tuesday, February 12, 2013

MapBasic



  • MapBasic

MapBasic is a programming language for creation of additional tools and functionality for the MapInfo Professional geographical information system.
MapBasic also allows programmers to develop software in popular programming languages such as C, C++ and Visual Basic and use these with the MapInfo Professional GIS to create geographically based software, such as electronic mapping.
http://en.wikipedia.org/wiki/MapBasic

Friday, January 25, 2013

Fuzzy logic


Fuzzy logic
Fuzzy logic iss a form of many-valued logic or probabilistic logic; it deals with reasoning that is approximate rather than fixed and exact.
Compared to traditional binary sets (where variables may take on true or false values) fuzzy logic variables may have a truth value that ranges in degree between 0 and 1.
Fuzzy logic has been extended to handle the concept of partial truth, where the truth value may range between completely true and completely false
http://en.wikipedia.org/wiki/Fuzzy_logic

  • Fuzzy Logic (FL) is a method of reasoning that resembles human reasoning. The approach of FL imitates the way of decision making in humans that involves all intermediate possibilities between digital values YES and NO.
The conventional logic block that a computer can understand takes precise input and produces a definite output as TRUE or FALSE, which is equivalent to human’s YES or NO.
http://www.tutorialspoint.com/artificial_intelligence/artificial_intelligence_fuzzy_logic_systems.htm

  • In this work, we focus   the   detection   and   prediction   mechanism   against DDoS  attacks  in  IEEE  802.15.4  using  Fuzzy  logic  system. The   main   contribution   of   Fuzzy   based   detection   and prediction system (FBDPS) is to detect the DDoS attackers
by comparing the energy consumption of sensor nodes.
http://ijcsi.org/papers/IJCSI-10-6-1-293-301.pdf

Monday, April 23, 2012

course pages

Electrical Engineering and Computer Science
http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/

Wednesday, April 18, 2012

GRE Computer Science Questions

GRE Computer Science Question 01


40. Consider the following pseudocode program.
int i
main ()
{
i = 3
S ()
R ()
}
void S ()
{
print i // prints the value of i on the current line of output
print " " // prints a blank space on the current line of output
}
void R ()
{
int i
i = 2
S ()
}
What is the output of the program if the pseudocode uses either static (lexical) scoping or dynamic scoping?
Static Scoping Dynamic Scoping
(A) 3 2 3 2
(B) 3 3 2 2
(C) 3 3 2 3
(D) 3 3 3 2
(E) 3 3 3 3

http://www.youtube.com/watch?v=SwyaLVsJCsI