Advanced Security Integration, Tips & Tricks

Total Page:16

File Type:pdf, Size:1020Kb

Advanced Security Integration, Tips & Tricks #CLUS Advanced Security Integration, Tips & Tricks Aaron T. Woland, CCIE #20113 Principal Engineer, Advanced Threat Security BRKSEC-3557 #CLUS Cisco Webex Teams Questions? Use Cisco Webex Teams (formerly Cisco Spark) to chat with the speaker after the session How 1 Find this session in the Cisco Events App 2 Click “Join the Discussion” 3 Install Webex Teams or go directly to the team space 4 Enter messages/questions in the team space Webex Teams will be moderated cs.co/ciscolivebot#BRKSEC-3557 by the speaker until June 18, 2018. #CLUS BRKSEC-3557 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 3 Advanced Security Integration, Tips & Tricks Aaron Woland, CCIE# 20113 Principal Engineer Advanced Threat Security [email protected] @AaronWoland https://cisco.app.box.com/v/Loxx-Public http://www.networkworld.com/blog/secure-network-access/ http://cs.co/ise-community #CLUS © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public Sarcasm “If we can’t laugh at ourselves, then we cannot laugh at anything at all” BRKSEC-3557 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 5 Warning: This is my therapy session BRKSEC-3557 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 6 Disclaimer: “All Comments are my own, and are not representative of Cisco… Any correlation to real live persons or situations was completely unintentional... Blah Blah Blah...” #CLUS BRKSEC-3557 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 7 Important: Hidden Slide Alert Look for this “For Your Reference” Symbol in your PDF’s FFoor rY Yoouur r There is a tremendous amount of hidden content, for you to use later! RReefferreennccee https://cisco.app.box.com/v/Loxx-Public #CLUS BRKSEC-3557 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 8 Please fill out the survey #CLUS BRKSEC-3557 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 9 Agenda • Introduction • Level Setting • TC-NAC • Rapid Threat Containment • Working with Limits • Simplify • Cisco Visibility • Conclusion #CLUS BRKSEC-3557 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 10 Our environment for this Tectorial • Cisco Switching • Stealthwatch Cloud • Tenable • Cisco Routing • Cognitive (CTA) • Verodin • Firepower NGFW / FMC • AMP • Splunk • Firepower NGIPS • ThreatGrid • Phantom • Stealthwatch Enterprise • Umbrella • Identity • Services Engine • Security Packet Analyzer #CLUS BRKSEC-3557 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 11 The Environment Service Now TG AMP CTA Verodin SW Cloud AD NGFW SW-C Collector ISE WSA Umb-VA Tetration UDP Endpoint Flow collector SMC NGIPS Director Concentrator IDS SPA > Tenable Alt Path The Network NVM Collector splunk Phantom FMC nvzFlow netFlow #CLUS © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public BRKSEC13 -3557 Visit Us at the Cisco Investments Village in the World of Solutions REMOVE ASSUMPTIONS. SECURITY INSTRUMENTATION PLATFORM (SIP) PROVE SECURITY. Verodin is the first business platform purpose- built to measure, manage and improve security effectiveness with quantifiable, evidence-based metrics. Verodin empowers users to continuously validate the people, processes and technologies that safeguard business-critical assets. Tenable – A comprehensive portfolio for every organization Cyber Exposure platform providing visibility into any asset on any computing platform – from traditional to cloud to IoT Vulnerability management with extensive compliance reporting and dashboards World’s most trusted vulnerability assessment technology, powering Tenable.io and SecurityCenter • In the lab, we are using Phantom (acquired by Splunk) for security automation. • Could use the security automation tool of your choice: • Exabeam • IBM Resilient • Swim Lane • Demisto • Etc #CLUS BRKSEC-3557 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 15 Agenda • Introduction • Level Setting • TC-NAC • Rapid Threat Containment • Working with Limits • Simplify • Cisco Visibility • Conclusion #CLUS BRKSEC-3557 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 16 #CLUS BRKSEC-3557 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 17 Vocabulary Level Set (Here’s Those TLA’s) • Quarantine – a term that seems to mean something different to everyone you speak to • Endpoint Protection Services (EPS) – Added in ISE 1.2. Advertised in 1.3 w/ pxGrid. • Can assign an endpoint to Quarantine only. • Used with or Without pxGrid • Adaptive Network Control (ANC) – EPS renamed to ANC in 1.4. New ANC Functionality added in 2.0. • Create ANC “classifications” (aka: name spaces) – and endpoints can be assigned to those classifications. • Quarantine, Kick_off_Network, Investigate, Nuke_From_Orbit, etc. • Used with or without pxGrid in v2.2+. • Rapid Threat Containment (RTC) – the “solution level” of integrating products together that use ANC or EPS • Change of Authorization (CoA) – The ability to dynamically change the level of access an endpoint has on the network. • Course of Action (CoA) – The recommended correctional action for an infected system. • TrustSec – A simple Tag that represents the full context of an endpoint/user – yet powerful. #CLUS BRKSEC-3557 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 18 Vocabulary Level Set (Here’s Those FLA’s) • Platform eXchange Grid (pxGrid) – A communication bus (not an API) designed to rapidly share security data at large scale, without the pains of a point-API or being application specific. • Uses a Publish/Subscribe (Pub/Sub) model to share information. • Has Central, Proxy, and Broker mechanisms. • Structured Threat Information Expression (STIX) – A language used to share Cyber Threat Intelligence (CTI), aka: threat data. • It’s a format, not a transport protocol. It requires something like TAXII or pxGrid to carry it between consumers and producers of the STIX data. • Trusted Automated eXchange of Intelligence Information (TAXII) – Protocol used to exchange CTI over secure communication (HTTPS). • Designed specifically to carry STIX CTI. • Follows a Publish / Subscribe (pub/sub) model, similar to pxGrid – but Central model only. • Common Vulnerability Scoring System (CVSS) – Open standard for assessing the severity of computer vulnerabilities. #CLUS BRKSEC-3557 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 19 Threat Containment FFoor rY Yoouru r EPS / ANC Mitigation Actions RReferenncece ANC Mitigation Actions EPS RESTful API ANC 1.0(legacy EPS) ANC 2.0(enhanced EPS) • Quarantine • Quarantine Includes legacy EPS functionality CISCO ECO- • Unquarantine • Unquarantine Note: The remediation and provisioning ISE PARTNER • Shutdown • Port Bounce actions have been depreciated in ISE • Terminate 2.1 • Shutdown • Apply Endpoint Policy by MAC or IP ACTION • Re-Authenticate • Clear Endpoint Policy by MAC or IP • Get Endpoint By IP • Create/Update/Delete Policy • Get Policy By Name MITIGATE • Get All Policies • Get Endpoints By MAC • Get All Endpoints • Get Endpoint by Policy Available in ISE 1.2 + Available in pxGrid Available in pxGrid & starting in ISE 1.3 + ANC API (ISE 2.1) #CLUS BRKSEC-3557 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 20 Threat Centric NAC (TC-NAC) TC-NAC Attack Vectors In the News 2016 Verizon Breach Report • “Older Vulnerabilities are still heavily targeted” • “All the patching is for naught, if we aren’t patching the right things” 2017 Cisco Annual Cybersecurity Report • “Threats specifically seek vulnerable browsers and plugins. • “Adversaries See Opportunity in Unpatched Software” #CLUS BRKSEC-3557 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 22 TC-NAC Threat Centric NAC Cisco ISE protects your Create ISE authorization policies based on the threat and vulnerability attributes network from data breaches by segmenting compromised and vulnerable endpoints for remediation. - Vulnerability assessments AMP Tenable - Threat events Compliments Posture - Threat notifications - CVSS Who Vulnerability data tells endpoint’s - IOC posture from the outside What Expanded control When driven by threat intelligence and vulnerability assessment data Where Network Access Policy Faster response How with automated, real-time policy Posture updates based on vulnerability Cisco ISE data and threat metrics Threat Endpoints Vulnerability #CLUS BRKSEC-3557 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 23 TC-NAC FFoor rY Yoouru r Threat Centric NAC explained RReferenncece Reduce vulnerabilities, contain threats IOC CVSS “Threat detected” Vulnerability scan 1 4 Malware infection Infection spread Quarantine and 3 Vulnerability detected Remediate Cisco AMP 2 Malware scans for vulnerable endpoints Vulnerable host Compromised endpoints spread malware by Flag compromised and vulnerable hosts and limit exploiting known vulnerabilities in the network access to remediation Segment Most endpoint AMP deployed in ‘visibility only’ mode Common Vulnerability Scoring System (CVSS) | Indicators of Compromise (IOC) | Advanced Malware Protection (AMP) #CLUS BRKSEC-3557 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 24 TC-NAC Threat Centric NAC Pick Vulnerability assessment vendor of your choice Cisco CTA • TC-NAC supports Tenable, Qualys, Cognitive Threat Analytics (CTA) STIX and Rapid7. SCAN REQUEST • A standard “listener” will be SCANNER CVSS Score supported for threats using the
Recommended publications
  • Unit of Study: Activity Sheet Three
    Activity Sheet Three – Programming One Revised October, 2010 Your Name:_______________________________________ Class Period: _______________ Date: ______________________ UNIT OF STUDY: ACTIVITY SHEET THREE POINT BREAKDOWN ASSIGNMENT POINT VALUE EARNED VOCABULARY 20 POINTS _________ SECTION CHECKPOINT PAGE 49 – NEW BOOK 10 POINTS _________ SECTION CHECKPOINT PAGE 54 – NEW BOOK 10 POINTS _________ SECTION CHECKPOINT PAGE 61 – NEW BOOK 10 POINTS _________ CHAPTER 3 REVIEW ?’ TRUE/FALSE – PAGE 62-63 10 POINTS _________ NEW BOOK PROJECT 3-1 – PAGE 63 10 POINTS _________ NEW BOOK PROJECT 3-2 – PAGE 64 10 POINTS _________ NEW BOOK PROJECT 3-3 – PAGE 64 10 POINTS _________ NEW BOOK PROJECT 3-4 – PAGE 64 10 POINTS _________ NEW BOOK ACTIVITY 3-1 PAGE 66 NEW BOOK 25 POINTS _________ 1 Activity Sheet Three – Programming One Revised October, 2010 PURPLE BOOK LESSON 3 WRITTEN QUESTIONS 14 POINTS _________ Page 125 LESSON 3 PROJ.3-1 10 POINTS _________ LESSON 3 PROJ.3-2 10 POINTS _________ LESSON 3 PROJ.3-3 10 POINTS _________ LESSON 3 PROJ.3-5 10 POINTS _________ LESSON 3 PROJ3-7 10 POINTS _________ LESSON 3 PROJ.3-9 10 POINTS _________ LESSON 3 PROJ.3-10 10 POINTS _________ CRITICAL THINKING 3-1 Essay 25 POINTS _________ **The topic has changed – see inside of packet for change TOTAL POINTS POSSIBLE 234 _________ GENERAL COMMENTS… 2 Activity Sheet Three – Programming One Revised October, 2010 YOUR NAME: CLASS PERIOD: Activity Sheet One - This activity will incorporate reading and activities from Fundamentals of C++ (Introductor y) and, Introduction to Computer Science Using C++. Both books can be found in the Programming area of the classroom, and must be returned at the end of the period.
    [Show full text]
  • The Order of Operations Agreement Page 1
    Lecture Notes The Order of Operations Agreement page 1 The order of operations rule is an agreement among mathematicians, it simplies notation. P stands for parentheses, E for exponents, M and D for multiplication and division, A and S for addition and subtraction. Notice that M and D are written next to each other. This is to suggest that multiplication and division are equally strong. Similarly, A and S are positioned to suggest that addition and subtraction are equally strong. This is the hierarchy, and there are two basic rules. 1. Between two operations that are on different levels of the hierarchy, we start with the operation that is higher. For example, between a division and a subtraction, we start with the division since it is higher in the hierarchy than subtraction. 2. Between two operations that are on the same level of the hierarchy, we start with the operation that comes rst from reading left to right. Example 1. Perform the indicated operations. 20 3 4 Solution: We observe two operations, a subtraction and a multiplication. Multiplication is higher in the hierarchy than subtraction, so we start there. 20 3 4 = multiplication 20 12 = subtraction = 8 Example 2. Perform the indicated operations. 36 3 2 Solution: It is a common mistake to start with the multiplication. The letters M and D are in the same line because they are equally strong; among them we proceed left to right. From left to right, the division comes rst. 36 3 2 = division 12 2 = multiplication = 24 Example 2v. Perform the indicated operations.
    [Show full text]
  • Order of Operations with Brackets
    Order Of Operations With Brackets When Zachery overblows his molting eructs not statedly enough, is Tobie catenate? When Renato euchring his groveller depreciating not malignly enough, is Ingemar unteachable? Trap-door and gingerly Ernest particularizes some morwong so anally! Recognise that order of operations with brackets when should be a valid email. Order of Operations Task Cards with QR codes! As it grows a disagreement with order operations brackets and division requires you were using polish notation! What Is A Cube Number? The activities suggested in this series of lessons can form the basis of independent practice tasks. Are you getting the free resources, and the border around each problem. We need an agreed order. Payment gateway connection error. Boom Cards can be played on almost any device with Internet access. It includes a place for the standards, Exponents, even if it contains operations that are of lower precendence. The driving principle on this side is that implied multiplication via juxtaposition takes priority. What is the Correct Order of Operations in Maths? Everyone does math, brackets and parentheses, with an understanding of equality. Take a quick trip to the foundations of probability theory. Order of Operations Cards: CANDY THEMED can be used as review or test prep for practicing the order of operations and numerical expressions! Looking for Graduate School Test Prep? Use to share the drop in order the commutative law of brackets change? Evaluate inside grouping symbols. Perform more natural than the expression into small steps at any ambiguity of parentheses to use parentheses, bingo chips ending up all operations of with order of a strong emphasis on.
    [Show full text]
  • Answers Solving Problems Using Order of Operations
    Solving Problems Using Order of Operations Name: Solve the following problems using the order of operations. Answers Step 1: Parenthesis () Solve all problems in parenthesis FIRST. 1. Step 2: Exponents 2,3,4 Next solve any numbers that have exponents. 2. Step 3: Multiply or Divide ×, ÷ Then solve any multiplication or division problems (going from left to right). Step 4: Add or Subtract +, - Finally solve any addition or subtraction problems (going from left to right). 3. 1) 21 ÷ 3 + (3 × 9) × 9 + 5 2) 18 ÷ 6 × (4 - 3) + 6 4. 5. 6. 7. 3) 14 - 8 + 3 + 8 × (24 ÷ 8) 4) 4 × 5 + (14 + 8) - 36 ÷ 9 8. 9. 10. 5) (17 - 7) × 6 + 2 + 56 - 8 6) (28 ÷ 4 ) + 3 + ( 10 - 8 ) × 5 7) 12 - 5 + 6 × 3 + 20 ÷ 4 8) 36 ÷ 9 + 48 - 10 ÷ 2 9) 10 + 8 × 90 ÷ 9 - 4 10) 8 × 3 + 70 ÷ 7 - 7 1-10 90 80 70 60 50 40 30 20 10 0 Math www.CommonCoreSheets.com 1 Solving Problems Using Order of Operations Name: Answer Key Solve the following problems using the order of operations. Answers Step 1: Parenthesis () Solve all problems in parenthesis FIRST. 1. 255 Step 2: Exponents 2,3,4 Next solve any numbers that have exponents. 2. 9 Step 3: Multiply or Divide ×, ÷ Then solve any multiplication or division problems (going from left to right). Step 4: Add or Subtract +, - Finally solve any addition or subtraction problems (going from left to right). 3. 33 1) 21 ÷ 3 + (3 × 9) × 9 + 5 2) 18 ÷ 6 × (4 - 3) + 6 4.
    [Show full text]
  • 2. Recoding Variables in CREATE
    01/06/98 2. Recoding Variables in CREATE 2.1 Overview This chapter covers the most common statements appearing in the recode section of the CREATE step. Additional statements and features are described in Volume III. Section 2.2 describes arithmetic assignment statements and elementary arithmetic operations in VPLX. In fact, they barely need introduction, since they are essentially identical to conventions of SAS and Fortran 90. Almost equally familiar are the functions in section 2.3, which may be used in arithmetic assignment statements. Section 2.4 introduces set assignment statements, which do not have a ready analogue in either SAS or Fortran (1). These statements are generally not required for simple applications, but they facilitate operations on a series of variables. Many aspects of the VPLX syntax employ the notion of sets, denoted by standard set notation, “{ }”. Section 2.5 describes conditional statements in VPLX. These statements follow almost identically the syntax of Fortran 90, including the enhancements to FORTRAN 77 (2) to allow use of symbols (“>”, “<”, etc.) expressing arithmetic relations. Section 2.6 describes the PRINT statement, which already appeared in examples in Chapter 1. For completeness, section 2.7 describes specialized functions, including MISSING. These functions are more complex than those in section 2.3 and are required less frequently. The reader may thus regard this section as optional. 2.2 Familiar Arithmetic Assignment Statements SAS, FORTRAN 77 (except for semicolons), and Fortran 90 (with optional semicolons) follow the same basic syntax for arithmetic assignment statements. Although there are some important differences between statements of a computer language and equations in conventional mathematical notation (3), generally the languages follow mathematics closely.
    [Show full text]
  • Horadam Sequences: a Survey Update and Extension
    Volume 80 BULLETIN of the May 2017 INSTITUTE of COMBINATORICS and its APPLICATIONS Editors-in-Chief: Marco Buratti, Don Kreher, Tran van Trung Boca Raton, Florida ISSN: 1183-1278 BULLETIN OF THE ICA Volume 80 (2017), Pages 99{118 Horadam Sequences: A Survey Update and Extension Peter J. Larcombe Department of Computing and Mathematics College of Engineering and Technology University of Derby Kedleston Road, Derby DE22 1GB, U.K. [email protected] Abstract We give an update on work relating to Horadam sequences that are generated by a general linear recurrence formula of order two. This article extends a first ever survey published in early 2013 in this Bulletin, and includes coverage of a new research area opened up in recent times. 1 Introduction 1.1 Preamble Looking back over time we can see that, within the vast and ill-defined field of applied mathematics, the advent of serious computing power in the 1970s began to accelerate a then already discernible breach between classic analytical mathematics (concentrating on problems and theories involving continuous phenomena) and that which tackled discrete concepts and en- tities. The latter has, over the last sixty years or so, developed its own characteristics and subject personality—aided en route by increased expo- sure to software tools/languages—and it is in this broad sphere of what 99 Accepted: 15 March 2017 is nowadays known as discrete mathematics that the theory of integer se- quences lies, with many applications now found in number theory and com- binatorics to name but two
    [Show full text]
  • Operator Precedence in Arithmetic1
    Operator Precedence in Arithmetic1: Figure 1: ‘Arithmetic,’ can be defined as ‘[the science of] numbers, and the operations performed on numbers.’ 2 Introduction: Conventional Arithmetic possesses rules for the order of operations. Which operations ought we to evaluate first? In what order ought we to evaluate operations? This is the topic that this chapter wishes to address. ‘Precedence,’ is also sometimes referred to as ‘the order of operations.’ 1 The Etymology of the English mathematical term, ‘arithmetic,’ is as follows. The English adjective, ‘arithmetic,’ is derived from the Latin 1st-and-2nd-declension adjective, ‘arithmētica, arithmēticus, arithmēticum.’ Further, the Latin adjective, ‘arithmēticus,’ is derived from the Ancient-Greek phrase, ἀριθμητικὴ τέξνη or, when transliterated, ‘arithmētikḕ téchne,’ which means ‘the art of counting;’ ‘the skill of counting;’ ‘the science of counting.’ ὁ ἀριθμός genitive: τοῦ ἀριθμοῦ, or–when transliterated: ‘ho arithmós,’ genitive: ‘toũ arithmoũ,’–is a 2nd-declension Ancient-Greek noun that means ‘number,’ ‘numeral,’ Cf. ‘ἀριθμός#Ancient_Greek,’ Wiktionary (last modified: 7th September 2018, at 17:57.), https://en.wiktionary.org/wiki/ἀριθμός#Ancient_Greek , accessed 29th April 2019. 2 Cf. ‘arithmetic,’ Wiktionary (last modified: 25th April 2019, at 04:45.), https://en.wiktionary.org/wiki/arithmetic , accessed 29th April 2019. 1 | Page Body: The Etymological Definition of ‘Precedence:’ Our English noun, ‘precedence,’ is derived from the Latin substantive participle, ‘praecēdentia.3’ ‘Praecēdentia,’
    [Show full text]
  • Expressions & I/O 2.14 Arithmetic Operators Arithmetic Operators
    Expressions & I/O 2.14 Arithmetic Operators l An operator is a symbol that tells the computer Unit 2 to perform specific mathematical or logical manipulations (called operations). Sections 2.14, 3.1-10, 5.1, 5.11 l An operand is a value used with an operator to CS 1428 perform an operation. Fall 2017 l C++ has unary and binary operators: Jill Seaman ‣ unary (1 operand) -5 ‣ binary (2 operands) 13 - 7 1 2 Arithmetic Operators Integer Division l Unary operators: • If both operands are integers, / (division) operator always performs integer division. SYMBOL OPERATION EXAMPLES The fractional part is lost!! + unary plus +10, +y - negation -5, -x cout << 13 / 5; // displays 2 cout << 91 / 7; // displays 13 l Binary operators: SYMBOL OPERATION EXAMPLE • If either operand is floating point, the result is + addition x + y floating point. - subtraction index - 1 * multiplication hours * rate cout << 13 / 5.0; // displays 2.6 / division total / count cout << 91.0 / 7; // displays 13 % modulus count % 3 3 4 Modulus 3.1 The cin Object • % (modulus) operator computes the l cin: short for “console input” remainder resulting from integer division ‣ a stream object: represents the contents of the screen that are entered/typed by the user using the keyboard. cout << 13 % 5; // displays 3 ‣ requires iostream library to be included cout << 91 % 7; // displays 0 l >>: the stream extraction operator ‣ use it to read data from cin (entered via the keyboard) • % requires integers for both operands cin >> height; cout << 13 % 5.0; // error ‣ when this instruction is executed, it waits for the user to type, it reads the characters until space or enter (newline) is typed, cout << 91.0 % 7; // error then it stores the value in the variable.
    [Show full text]
  • Order of Operations
    Mathematics Instructional Plan – Grade 5 Order of Operations Strand: Computation and Estimation Topic: Applying the order of operations. Primary SOL: 5.7 The student will simplify whole number numerical expressions using the order of operations.* * On the state assessment, items measuring this objective are assessed without the use of a calculator. Related SOL: 5.4 Materials Tiling Puzzle activity sheet (attached) Digit Tiles activity sheet (attached) Four 4s activity sheet (attached) Paper or plastic tiles Vocabulary expression, operation, order of operations, parentheses Student/Teacher Actions: What should students be doing? What should teachers be doing? Note: The order of operations is a convention agreed upon by mathematicians and defines the computation order to follow in simplifying an expression. An expression, like a phrase, has no equal sign. Expressions are simplified by using the order of operations. The order of operations is as follows: o First, complete all operations in parentheses (grouping symbols). o Second, multiply and/or divide, whichever comes first, in order from left to right. o Third, add and/or subtract whichever comes first, in order from left to right. 1. Have students find the answer to 5 + 3 × 7. Ask students to share their answers and record their ideas on the board. Likely answers are 26 or 56. Ask students to explain how someone might have gotten 56; then ask how someone might have gotten 26. Next, ask, “Do you think it is OK to have two different answers to this problem?” Allow students to discuss. Next, say, “Mathematicians many years ago realized the confusion it would cause to have more than one answer.
    [Show full text]
  • Operator Precedence Lab
    Operator Precedence Lab Introduction Order of operations (also known as operator precedence) is a set of rules used to clarify the order in which procedures are performed in mathematical expressions. Similarly, operator precedence exists within computer programming and varies from programming language to programming language. Disregard or confusion about operator precedence has been the cause of many software malfunctions. In these cases, the mathematical operators are performed in an order contrary to what the software developer predicted and thus return an incorrect value. These errors can cause anything from the loss of hundreds of millions of dollars to forced rocket explosions. Review Below is a table outlining operator precedence in C++. Operations listed at the top of the table have the highest precedence while operations listed at the bottom of the table have the lowest precedence. The associativity of operations refers to the order with which operations of the same precedence are performed. In this table, operators in the same row have the same precedence. Precedence Operator Symbol Associativity 1 Scope resolution :: Left to right 2 Suffix/Postfix ++ -- Function Call () Array Subscripting [] Element selection by reference . Element selection through -> pointer 3 Prefix ++ -- Right to left Unary + - Logical NOT and bitwise NOT ! ~ Type cast (type) Indirection (dereference) * Address-of & Size-of sizeof Dynamic memory allocation new, new[] Dynamic memory deallocation delete, delete[] 4 Pointer to member .* ->* Left to right 5 Multiplication, division, * / % remainder 6 Addition, subtraction + - 7 Bitwise left shift and bitwise right << >> shift 8 Relational Operators < <= > >= 9 Equality == != 10 Bitwise AND & 11 Bitwise XOR ^ 12 Bitwise OR | 13 Logical AND && 14 Logical OR || 15 Assignment = Right-to-left Look at the following code: int foo() { int expr = 1; expr = 2 * expr++; return expr; } If a person looking at this code wasn’t aware of operator precedence, he or she might believe that the multiplication of 2 and expr happens first.
    [Show full text]
  • Algebraic Statements Are Used to Perform the Basic Mathematical Operations and Functions That Deal with Constants and Map Layers
    Introduction Syntax Operators Functions Order of Operations Mixed Mode Arithmetic VOID Data Introduction Map Layer Mathematics Algebraic statements are used to perform the basic mathematical operations and functions that deal with constants and map layers. This is known as Layer Math, or Overlay Math. Algebraic operators and functions are performed on every cell in a specified map layer. If a map layer is multiplied by 1000, then each cell in the input map layer will be multiplied by 1000. If one map layer is subtracted from another, then all common cells are subtracted. Using More Than One Map Layer in an Algebraic Statement All the map layers that appear in an algebraic statement must have the same cell resolution, orientation, and at least one common cell. These parameters can be determined from the Information window of each map layer. The Script Window Operators and functions are applied in the Script window. To open a new Script window select New Script from the Windows menu. Syntax and type conventions Using the Script window interface Syntax Algebraic statements follow the same convention as operation statements in the Script window. They begin by stating the name of the new map layer to be generated. This is followed by an “=” symbol and then an algebraic expression. © Copyright ThinkSpace Inc., 1998, Version 1 UG-ALG-1 Algebraic expressions can contain map names, operators, bracketing, and function names. An algebraic statement must contain at least one map layer name. The basic syntax is: newmap = expression; Algebraic statements can be complex. MFworks can handle complex, bracketed expressions that include multiple functions and operators, such as: map3 = map1 + (5.0 * SIN(map2)) / AVG(map2, 6); OR map4 = map3 * 3.1415 + MAX(map1, map2, map3); Note: Algebraic statements cannot contain map Operations.
    [Show full text]
  • Common Course Outline MATH 131 Concepts of Mathematics I: Numeration Systems and Operations 4 Semester Hours
    Common Course Outline MATH 131 Concepts of Mathematics I: Numeration Systems and Operations 4 Semester Hours Community College of Baltimore County Description Students will learn the concepts and principles of mathematics taught in elementary education. Topics include the origin of numbers, system of cardinal numbers, numeration systems, and principles underlying the fundamental operations. This is not a “methods in teaching” course. Prerequisites: (MATH 083 or MATH 101 or LVM3) or sufficient placement score; and ACLT 052 or ACLT 053. Overall Course Objectives Upon successfully completing the course students will be able to: 1. apply different problem solving techniques, including the use of calculators and/or other appropriate technology, to solve a variety of mathematical problems (both standard and non-standard) (I, III, IV, V, VI, 1, 4, 6, 7) 2. utilize inductive and deductive reasoning to solve problems, as appropriate (I, III, IV, VI, 1, 3, 4, 6, 7); 3. use set language, notation, and operations to work with various sets, both numerical and non- numerical (I, II, III, V, 1, 2); 4. illustrate the different relationships between sets using Venn diagrams (I, II, 1, 2); 5. compare and contrast decimal and non-decimal numeration systems from various cultures and periods in history using appropriate characteristics (i.e. number base, place value, position, zero, symbol) (III, V, 1, 3, 5); 6. illustrate general characteristics of numeration systems and their operations using various base systems (I, IV, VI, 1, 2, 4); 7. relate general numeration system characteristics to whole numbers, integers, and rational numbers (I, III, 1, 2); 8. perform arithmetic operations with whole numbers, integers, and rational numbers using algorithms, manipulatives, calculators, etc.
    [Show full text]